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 相关文章推荐
Python3中的2to3转换工具使用示例
Jun 12 Python
深入解析Python中的变量和赋值运算符
Oct 12 Python
在python的类中动态添加属性与生成对象
Sep 17 Python
python探索之BaseHTTPServer-实现Web服务器介绍
Oct 28 Python
详解tensorflow载入数据的三种方式
Apr 24 Python
Python闭包执行时值的传递方式实例分析
Jun 04 Python
python爬取微信公众号文章的方法
Feb 26 Python
详解python websocket获取实时数据的几种常见链接方式
Jul 01 Python
python交易记录整合交易类详解
Jul 03 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
Dec 10 Python
深入浅析python的第三方库pandas
Feb 13 Python
对象析构函数__del__在Python中何时使用
Mar 22 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
《DOTA3》开发工作已经开始 《DOTA3》将代替《DOTA2》
2021/03/06 DOTA
PHP中通过ADO调用Access数据库的方法测试不通过
2006/12/31 PHP
某大型网络公司应聘时的笔试题目附答案
2008/03/27 PHP
Fine Uploader文件上传组件应用介绍
2013/01/06 PHP
phpmailer发送邮件之后,返回收件人是否阅读了邮件的方法
2014/07/19 PHP
分享十五个最佳jQuery 幻灯插件和教程
2010/03/27 Javascript
javascript数组去掉重复
2011/05/12 Javascript
JSON辅助格式化处理方法
2013/03/26 Javascript
firefox浏览器不支持innerText的解决方法
2013/08/07 Javascript
js原型继承的两种方法对比介绍
2014/03/30 Javascript
动态加载JavaScript文件的两种方法
2016/04/22 Javascript
jQuery 获取多选框的值及多选框中文的函数
2016/05/16 Javascript
使用BootStrap和Metroui设计的metro风格微网站或手机app界面
2016/10/21 Javascript
Javascript基础回顾之(一) 类型
2017/01/31 Javascript
angularjs实现时间轴效果的示例代码
2017/11/29 Javascript
jQuery实现获取选中复选框的值实例详解
2018/06/28 jQuery
Vue框架里使用Swiper的方法示例
2018/09/20 Javascript
利用d3.js力导布局绘制资源拓扑图实例教程
2019/01/08 Javascript
Vuex中实现数据状态查询与更改
2019/11/08 Javascript
利用原生JS实现欢乐水果机小游戏
2020/04/23 Javascript
js实现拖拽元素选择和删除
2020/08/25 Javascript
Vue中父子组件的值传递与方法传递
2020/09/28 Javascript
Vue toFixed保留两位小数的3种方式
2020/10/23 Javascript
Python标准库使用OrderedDict类的实例讲解
2019/02/14 Python
Django中使用Whoosh进行全文检索的方法
2019/03/31 Python
Python openpyxl读取单元格字体颜色过程解析
2019/09/03 Python
python能做什么 python的含义
2019/10/12 Python
python实现身份证实名认证的方法实例
2019/11/08 Python
python统计文章中单词出现次数实例
2020/02/27 Python
浅谈html5之sse服务器发送事件EventSource介绍
2017/08/28 HTML / CSS
Omio西班牙:全欧洲低价大巴、火车和航班搜索和比价
2017/02/11 全球购物
英国顶级家庭折扣店:The Works
2017/09/06 全球购物
中学清明节活动总结
2014/07/04 职场文书
尊师重教演讲稿
2014/09/04 职场文书
国富论读书笔记
2015/06/26 职场文书
为什么代码规范要求SQL语句不要过多的join
2021/06/23 MySQL