我从websocket连接获取响应时总是遇到此错误:
print type(json.dumps(data))
TypeError: 'unicode' object is not callable
也:
print type(data)
TypeError: 'unicode' object is not callable
和
print type(str(data))
TypeError: 'unicode' object is not callable
有人可以教我如何将数据字符串编码回utf-8吗?
答案 0 :(得分:2)
您(或您使用的库,但更可能是您)已覆盖全局范围内的变量type
。
我在这里以同样的方式打破东西:
>>> type(1)
<type 'int'>
>>> type(u'9')
<type 'unicode'>
>>> type('9')
<type 'str'>
>>> type = u'i'
>>> type(1)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'unicode' object is not callable
要将Unicode字符串编码为UTF-8字节字符串,请调用.encode('UTF-8')
:
>>> u'€'.encode('utf-8')
'\xe2\x82\xac'