Python 中文编码
来源:互联网 发布:快压软件官方下载 编辑:程序博客网 时间:2024/06/05 15:50
- 中文编码问题
- 中文输出问题
1.中文编码问题
<1>首先写一个最简单的python代码
#!/usr/bin/pythonif __name__ == "__main__": print "hello word"
打印结果:hello word
<2>但是,要打印中文,Python 文件中如果未指定编码,Python默认编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。
#!/usr/bin/pythonif __name__ == "__main__": print "你好,世界"
报错:SyntaxError: Non-ASCII character ‘\xe4’ in file test1.py on line 5, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
<3>解决方法为只要在文件开头加入 # -- coding: UTF-8 -- 或者 #coding=utf-8 就行了
#!/usr/bin/python# -*- coding: UTF-8 -*-if __name__ == "__main__": print "你好 世界"
打印:你好 世界
2.中文输出问题
<1>保存在列表、元祖、字典中的汉字直接打印,只会打印其utf8编码。
#!/usr/bin/python#coding=utf-8if __name__ == "__main__": print "你好 世界" str1 = "这里是字符串1" print str1 type1 = ("这里是元祖","这里是元祖的第二个元素") print type1 list1 = ["这里是列表","列表的第二个元素"] print list1 dict1 = {"key1":"这里是字典"} print dict1
打印结果:
你好 世界这里是字符串1('\xe8\xbf\x99\xe9\x87\x8c\xe6\x98\xaf\xe5\x85\x83\xe7\xa5\x96', '\xe8\xbf\x99\xe9\x87\x8c\xe6\x98\xaf\xe5\x85\x83\xe7\xa5\x96\xe7\x9a\x84\xe7\xac\xac\xe4\xba\x8c\xe4\xb8\xaa\xe5\x85\x83\xe7\xb4\xa0')['\xe8\xbf\x99\xe9\x87\x8c\xe6\x98\xaf\xe5\x88\x97\xe8\xa1\xa8', '\xe5\x88\x97\xe8\xa1\xa8\xe7\x9a\x84\xe7\xac\xac\xe4\xba\x8c\xe4\xb8\xaa\xe5\x85\x83\xe7\xb4\xa0']{'key1': '\xe8\xbf\x99\xe9\x87\x8c\xe6\x98\xaf\xe5\xad\x97\xe5\x85\xb8'}
<2>使用json格式转换,解读其编码并输出汉字:
#!/usr/bin/python#coding=utf-8import jsonif __name__ == "__main__": print "你好 世界" str1 = "这里是字符串1" print str1 type1 = ("这里是元祖","这里是元祖的第二个元素") type1 = json.dumps(type1,encoding='UTF-8', ensure_ascii=False) print type1 list1 = ["这里是列表","列表的第二个元素"] list1 = json.dumps(list1,encoding='UTF-8', ensure_ascii=False) print list1 dict1 = {"key1":"这里是字典"} dict1 = json.dumps(dict1,encoding='UTF-8', ensure_ascii=False) print dict1
打印结果:
你好 世界这里是字符串1["这里是元祖", "这里是元祖的第二个元素"]["这里是列表", "列表的第二个元素"]{"key1": "这里是字典"}
3.编辑器中的编码设置
这一部分参考:http://www.runoob.com/python/python-chinese-encoding.html
<1>Python3版本 源码文件默认使用utf-8编码,所以可以正常解析中文,不需要指定 UTF-8 编码。
<2>使用编辑器,同时需要设置 py 文件存储的格式为 UTF-8,否则会出现错误:
Pycharm 设置步骤:
进入 file > Settings,在输入框搜索 encoding。
找到 Editor > File encodings,将 IDE Encoding 和 Project Encoding 设置为utf-8。
- Python 中文 编码
- python 中文编码 问题
- Python 中文编码问题
- python 中文编码
- Python 中文 编码问题
- python中文编码详解
- python_编码 中文
- python中文编码问题
- python 中文编码问题
- python中文编码问题
- python 中文编码问题
- python中文编码问题
- python 中文编码
- python中文编码问题
- python中的中文编码
- python中文编码转换
- python中文编码问题
- python中文编码问题
- 每天一个linux命令(28):tar命令
- 解决:According to TLD or attribute directive in tag file, attribute value does not accept any express。
- Easyui-DataGrid纵向合并单元格(根据某列合并)
- 日期格式国际化
- [FC][移动速度修改教程]
- Python 中文编码
- 377. Combination Sum IV
- 每天一个linux命令(29):chgrp命令
- 实现Action的三种方式(四)
- [FC][子弹数修改教程]
- Centos下卸载、重装、更新mysql
- 线段树2 HDU 1754 I Hate It
- SFC简单修改教程
- 使用Proguard进行代码混淆