这是我的代码(我正在使用python 2.7)
result = " '{0}' is unicode or something: ".format(mongdb['field'])
UnicodeEncodeError: 'ascii' codec can't encode character u'\xb0' in position 27: ordinal not in range(128)
看起来我从mongodb读取的字符串包含unicode。它会抛出这个错误。如何修复它以将此unicde与自定义字符串'连接起来是unicode或其他东西:'?
提前致谢
更新
result = u" '{0}' is unicode or something: ".format(mongdb['field'])
适合我
答案 0 :(得分:9)
使用unicode
格式字符串(推荐):
result = u" '{0}' is unicode or something: ".format(mongdb['field'])
或编码字段:
result = " '{0}' is unicode or something: ".format(mongdb['field'].encode('utf-8'))
答案 1 :(得分:1)
你必须知道MongoDB中出现的文本的编码是什么。\xB0
建议使用Windows-1252而不是UTF-8,所以试试这个:
result = ("'{0}' is unicode or something"
.format(mongdb['field'].decode('windows-1252'))