当我尝试将QString转换为常规python字符串时,我收到此错误:
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2029' in position 3: ordeal not in range(128)
我所做的就是:
str(string)
string
是QString,但它然后给了我那个错误。我该如何解决这个问题?
答案 0 :(得分:1)
Python 2.x中的名称str
具有误导性;由于历史原因,str is bytes
- 一串字节而不是字符。如果您尝试将字符串转换为字节字符串,Python默认使用ASCII。只需使用unicode(string)
在Python 2.x下获取字符串,或切换到3.x,其中str
实际上是字符串类型。