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的Django框架下搭建的BLOG添加RSS功能的教程
Apr 08 Python
深入浅析python with语句简介
Apr 11 Python
Python3.7 新特性之dataclass装饰器
May 27 Python
python2和python3实现在图片上加汉字的方法
Aug 22 Python
python3获取文件中url内容并下载代码实例
Dec 27 Python
TensorFlow实现指数衰减学习率的方法
Feb 05 Python
sklearn+python:线性回归案例
Feb 24 Python
matplotlib.pyplot.plot()参数使用详解
Jul 28 Python
python递归函数用法详解
Oct 26 Python
Django权限控制的使用
Jan 07 Python
Python机器学习算法之决策树算法的实现与优缺点
May 13 Python
python 使用pandas读取csv文件的方法
Dec 24 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
ubuntu 编译安装php 5.3.3+memcache的方法
2010/08/05 PHP
apache中为php 设置虚拟目录
2014/12/17 PHP
PHP生成和获取XML格式数据的方法
2016/03/04 PHP
PHP生成各种随机验证码的方法总结【附demo源码】
2017/06/05 PHP
Centos7.7 64位利用本地完整安装包安装lnmp/lamp套件教程
2021/03/09 Servers
jQuery 1.0.2
2006/10/11 Javascript
JS跨域代码片段
2012/08/30 Javascript
javascript中判断一个值是否在数组中并没有直接使用
2012/12/17 Javascript
文字不间断滚动(上下左右)实例代码
2013/04/21 Javascript
js实现简单锁屏功能实例
2015/05/27 Javascript
javascript使用输出语句实现网页特效代码
2015/08/06 Javascript
vue-cli2.9.3 详细教程
2018/04/23 Javascript
微信小程序canvas实现刮刮乐效果
2018/07/09 Javascript
JS在if中的强制类型转换方式
2018/07/15 Javascript
Vue组件之单向数据流的解决方法
2018/11/10 Javascript
一文快速了解JQuery中的AJAX
2019/05/31 jQuery
Python自定义类的数组排序实现代码
2016/08/28 Python
如何在Python函数执行前后增加额外的行为
2016/10/20 Python
Python 含参构造函数实例详解
2017/05/25 Python
Python编程实现及时获取新邮件的方法示例
2017/08/10 Python
对python3 urllib包与http包的使用详解
2018/05/10 Python
对Python中DataFrame选择某列值为XX的行实例详解
2019/01/29 Python
docker django无法访问redis容器的解决方法
2019/08/21 Python
Python类中的魔法方法之 __slots__原理解析
2019/08/26 Python
Python图像处理模块ndimage用法实例分析
2019/09/05 Python
浅析python redis的连接及相关操作
2019/11/07 Python
通过Turtle库在Python中绘制一个鼠年福鼠
2020/02/03 Python
如何利用Python识别图片中的文字
2020/05/31 Python
python和js交互调用的方法
2020/06/23 Python
英国一家专门出售品牌鞋子的网站:Allsole
2016/08/07 全球购物
葡萄牙鞋子品牌:Fair
2016/12/10 全球购物
高中语文教学反思
2014/01/16 职场文书
2014年教师批评与自我批评思想汇报
2014/09/20 职场文书
2014年财务科工作总结
2014/11/11 职场文书
办公室主任岗位职责
2015/01/31 职场文书
mysql中数据库覆盖导入的几种方式总结
2022/03/25 MySQL