如何解决如何使Python 2.x Unicode字符串不打印为u\'string\'?
| 我目前正在测试一个Web服务,该服务将以字典的形式返回大量JSON数据。这些词典的键和值都是unicode字符串,因此它们的输出像{u\'key1\':u\'value\',u\'key2\':u\'value2\'}
当在交互式解释器中打印到屏幕上时。
现在,假设这是3层深度的40元素字典。所有这些u字符使显示混乱,一眼就很难弄清实际数据是什么。即使使用pprint。
有什么办法告诉解释器我不在乎普通字符串和unicode字符串之间的区别吗?我不需要或想要你。
我发现唯一有帮助的是PYTHONIOENCODING环境变量。不幸的是,将其设置为\'ascii \'或\'latin-1 \'并不会消失。
我正在使用Python 2.6,并且使用常规的python解释器或iPython。
解决方法
如果您想要的是json,只需打印json:
>>> import json
>>> print json.dumps({u\'key1\':u\'value\',u\'key2\':u\'value2\'},indent=4)
{
\"key2\": \"value2\",\"key1\": \"value\"
}
, 为什么不创建自己的函数来打印字典? Python的默认格式可以快速方便地进行调试,但是对于3级深度,40个元素的字典绝对不适用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。