python2.7编码的问题
来源:互联网 发布:mac地址是什么意思 编辑:程序博客网 时间:2024/05/22 14:14
python2.7默认的ascii编码,遇到中文时会出现一大堆毛病。
网上有相关的文章,可以看一看,在这儿根据我实际中的问题补充几点:
1、对于中文的输出,特别是输出到文件中去,需要在编码开题加上 #coding:utf-8,中文字符需要做相应的编码转换。如:
str = u'<div>啦啦啦,德玛西亚</div>'e=str.encode('utf-8')with open('out.txt','w') as f: f.write(e)#而打印(print),直接打印就行了。print str
2、对于字典是输出。字典中包含中文时,输出到文件依旧想显示为中文,需要做一些变换:
#!/usr/bin/python# encoding:utf-8import jsondef dump(lst): fp = open("lst.utf8", "w") fp.write(json.dumps(lst, ensure_ascii=False)) fp.close()if __name__ == '__main__': dump([{'name': '北京', 'zone': 10}, {'name': '重庆', 'zone': 20}])#结果为:#[{"name": "北京", "zone": 10}, {"name": "重庆", "zone": 20}]
当字典中包含unicode编码字符时候,需要将所有的unicode编码转换成utf-8编码。
方法就是对每个关键字重新赋值,赋予转码后的值。
3、从文件中读取的时候,需要注意编码问题外。还要注意某些软件会在文本开头插入BOM。notepad++可以处理编码问题,以及BOM开头带来的问题。
以上两步基本上可以解决所见到的所有编码问题。算是慢慢明白廖雪峰老司机所说的仅需要记住unicode和utf-8编码的原因了。
0 0
- python2.7编码的问题
- python2的编码问题
- Python2.7 编码问题
- Python2.7编码问题
- python2.7 编码问题
- python2.7编码问题
- python2.7中的编码问题
- 由python2.7的UnicodeEncodeError说Python的编码问题
- 关于python2.7中Windows下默认编码的问题
- 解决Python2.7画三维图像遇到的编码问题
- python2编码。。感觉很奇怪的问题。。
- 坑爹的python2编码问题
- Python2获取中文文件名的编码问题
- Python2与Python3的编码问题
- python2.7 编码问题解析(一)
- python2.7 编码问题解析(二)
- python2.7 编码问题解析(三)
- python2.7中文编码报错问题
- JDK安装以及开发环境搭建
- 流行编程语言及其注释方式一览表
- Spring MVC配置Freemarker全局变量,实现应用全路径
- assert()函数用法总结
- 使用SocketChannel的NIO客户机服务器通信示例。
- python2.7编码的问题
- 1001
- Linux环境启动
- 基于物理渲染的基础理论
- ”编辑-编译-调试“(edit-compile-debug)周期
- Reactor 模式的简单实现
- dubbo配置注意事项
- laravel No supported encrypter found. The cipher and / or key length are invalid
- java对象序列化的总结