AAl*_*lvz 4 python unicode dictionary graph
我正在使用计数器from collections import Counter,我想使用它来打印它的值matplotlib.pylot.
当我尝试使用时:
plt.bar(range(len(cnt)), cnt.values(), align='center')
plt.xticks(range(len(cnt)), cnt.keys())
plt.show()
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
ValueError:matplotlib显示文本必须包含所有代码点<128或使用Unicode字符串
这就是我试图将Counter字典键转换为Unicode的原因.
如果您使用的是Python 2.7,则可以使用dict理解:
unidict = {k.decode('utf8'): v.decode('utf8') for k, v in strdict.items()}
Run Code Online (Sandbox Code Playgroud)
对于旧版本:
unidict = dict((k.decode('utf8'), v.decode('utf8')) for k, v in strdict.items())
Run Code Online (Sandbox Code Playgroud)
(这假设你的字符串是UTF-8,当然.)
| 归档时间: |
|
| 查看次数: |
17765 次 |
| 最近记录: |