>我有以下字符串:
cbBb’
最后一个字符是u'u2019'
。
我尝试了以下方法:
value = "cbBb’"
value.replace(u"u2019", "-")
value.encode('ascii', 'ignore')
但是当我尝试这样做时:
str(value)
我得到:
can't encode character u'u2019' in position 4: ordinal not in range(256)
我该如何解决这个问题?
在python中,字符串可以是Unicode,也可以只是常规字符串。 您应该通过在字符串前面添加一个u
来指定它是一个 Unicode 字符串来运行您的replace()
value = u'cbBb’'
value = value.replace(u"u2019", "-")
value.encode('ascii', 'ignore')
print(str(value)) #cbBb-
此外,replace()
不符合行,您需要将其重新分配给某些内容。
旁注:你可能要考虑换成Python 3,因为Python 2中的Unicode处理有点麻烦。