python 实现将字典dict、列表list中的中文正常显示方法


Posted in Python onJuly 06, 2018

在代码文件中定义中文时,经常会遇到问题,要么编码错误,要么是无法正常打印显示。

例如,dict_chinese.py:

#!/usr/bin/python
a={'name': 'fengshou'}
b={'name': "丰收"}
print "a=", a
print "b=", b

问题1

执行,查看结果

$ python dict_chinese.py 
 File "dict_chinese.py", line 5
SyntaxError: Non-ASCII character '\xe4' in file dict_chinese.py on line 5, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

原因

这是python编码的问题, python中默认的编码格式是ASCII格式, 所以默认是情况下无法正确编码汉字。

解决办法

定义编码格式。

在以后的每一个需要显示汉字的python文件中,首先定义编码格式,并且位置要求必须是在第一行或者第二行,如果第一行是#!/usr/bin/python,那么在第二行定义,其他在第一行定义。

以utf-8编码为例。

代码修改为:

#!/usr/bin/python
#-*-coding:utf-8 -*-
a={'name': 'fengshou'}
b={'name': '丰收'}
print "a=", a
print "b=", b

问题2

执行,查看输出:

$ python dict_chinese.py 
a= {'name': 'fengshou'}
b= {'name': '\xe4\xb8\xb0\xe6\x94\xb6'}

可以看到中文内容仍然无法正常显示。

解决办法

使用json进行格式转换,然后打印输出。

代码修改为:

#!/usr/bin/python
#-*-coding:utf-8 -*-
a={'name': 'fengshou'}
b={'name': '丰收'}
print "a=", a
print "b=", b
import json
result = json.dumps(b, encoding='UTF-8', ensure_ascii=False)
print "b=", result
$ python dict_chinese.py
a= {'name': 'fengshou'}
b= {'name': '\xe4\xb8\xb0\xe6\x94\xb6'}
b= {"name": "丰收"}

终于可以正常查看中文了。

以上这篇python 实现将字典dict、列表list中的中文正常显示方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python线程的两种编程方式
Apr 14 Python
python实现的文件同步服务器实例
Jun 02 Python
PYTHON压平嵌套列表的简单实现
Jun 08 Python
Python MySQL数据库连接池组件pymysqlpool详解
Jul 07 Python
为什么Python中没有"a++"这种写法
Nov 27 Python
python多线程抽象编程模型详解
Mar 20 Python
python获取磁盘号下盘符步骤详解
Jun 19 Python
使用python将最新的测试报告以附件的形式发到指定邮箱
Sep 20 Python
python查看数据类型的方法
Oct 12 Python
Python函数式编程指南:对生成器全面讲解
Nov 19 Python
sklearn-SVC实现与类参数详解
Dec 10 Python
Pyinstaller 打包发布经验总结
Jun 02 Python
Python判断中文字符串是否相等的实例
Jul 06 #Python
Python中使用Counter进行字典创建以及key数量统计的方法
Jul 06 #Python
python 字典 按key值大小 倒序取值的实例
Jul 06 #Python
对python字典元素的添加与修改方法详解
Jul 06 #Python
替换python字典中的key值方法
Jul 06 #Python
python 字典中文key处理,读取,比较方法
Jul 06 #Python
python迭代dict的key和value的方法
Jul 06 #Python
You might like
牡丹941资料
2021/03/01 无线电
php网站判断用户是否是手机访问的方法
2013/11/01 PHP
PHP实现获取域名的方法小结
2014/11/05 PHP
orm获取关联表里的属性值
2016/04/17 PHP
简单PHP会话(session)说明介绍
2016/08/21 PHP
php及codeigniter使用session-cookie的方法(详解)
2017/04/06 PHP
JavaScript回调(callback)函数概念自我理解及示例
2013/07/04 Javascript
js实现倒计时时钟的示例代码
2013/12/17 Javascript
判断一个对象是否为jquery对象的方法
2014/03/12 Javascript
老生常谈javascript的面向对象思想
2017/08/22 Javascript
jQuery Validate插件ajax方式验证输入值的实例
2017/12/21 jQuery
axios简单实现小程序延时loading指示
2018/07/30 Javascript
JS利用prototype给类添加方法操作详解
2019/06/21 Javascript
jQuery实现雪花飘落效果
2020/08/02 jQuery
python 自动化将markdown文件转成html文件的方法
2016/09/23 Python
对Tensorflow中的矩阵运算函数详解
2018/07/27 Python
对pycharm 修改程序运行所需内存详解
2018/12/03 Python
python3安装speech语音模块的方法
2018/12/24 Python
在Python文件中指定Python解释器的方法
2019/02/18 Python
Python数据类型之Number数字操作实例详解
2019/05/08 Python
Python实现基于SVM的分类器的方法
2019/07/19 Python
基于Django ORM、一对一、一对多、多对多的全面讲解
2019/07/26 Python
程序员的七夕用30行代码让Python化身表白神器
2019/08/07 Python
Python 经典算法100及解析(小结)
2019/09/13 Python
Python代码中如何读取键盘录入的值
2020/05/27 Python
Python3+Django get/post请求实现教程详解
2021/02/16 Python
定义css设备类型-Media Queries图表简介及使用方法
2013/01/21 HTML / CSS
详解移动端html5页面长按实现高亮全选文本内容的兼容解决方案
2016/12/03 HTML / CSS
西班牙国家航空官方网站:Iberia
2017/11/16 全球购物
日本快乐生活方式购物网站:Shop Japan
2018/07/17 全球购物
庆元旦活动总结
2014/07/09 职场文书
一份关于丢失公司财物的检讨书
2014/09/19 职场文书
2014民事授权委托书范本
2014/09/29 职场文书
大一新生检讨书
2014/10/29 职场文书
2015新年联欢晚会开场白
2014/12/14 职场文书
行政经理岗位职责
2015/04/15 职场文书