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 流程控制实例代码
Sep 25 Python
Python实现获取网站PR及百度权重
Jan 21 Python
Python中处理字符串之isalpha()方法的使用
May 18 Python
python遍历目录的方法小结
Apr 28 Python
python中map()函数的使用方法示例
Sep 29 Python
linux环境下的python安装过程图解(含setuptools)
Nov 22 Python
解决python升级引起的pip执行错误的问题
Jun 12 Python
Python实现FTP弱口令扫描器的方法示例
Jan 31 Python
Python3.5实现的罗马数字转换成整数功能示例
Feb 25 Python
Django之路由层的实现
Sep 09 Python
如何基于Python代码实现高精度免费OCR工具
Jun 18 Python
解决PyCharm无法使用lxml库的问题(图解)
Dec 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
模仿OSO的论坛(四)
2006/10/09 PHP
php操作csv文件代码实例汇总
2014/09/22 PHP
Yii框架关联查询with用法分析
2014/12/02 PHP
php实现简单的语法高亮函数实例分析
2015/04/27 PHP
PHP GD库相关图像生成和处理函数小结
2016/09/30 PHP
PHP实现页面静态化深入讲解
2021/03/04 PHP
FLASH 广告之外的链接
2008/12/16 Javascript
用jQuery简化JavaScript开发分析
2009/02/19 Javascript
JavaScript 常用函数库详解
2009/10/21 Javascript
jWiard 基于JQuery的强大的向导控件介绍
2011/10/28 Javascript
拖动table标题实现改变td的大小(css+js代码)
2013/04/16 Javascript
浅析jQuery1.8的几个小变化
2013/12/10 Javascript
javascript实现在网页任意处点左键弹出隐藏菜单的方法
2015/05/13 Javascript
jquery UI Datepicker时间控件的使用及问题解决
2016/04/28 Javascript
JS轮播图中缓动函数的封装
2020/11/25 Javascript
分享一道关于闭包、bind和this的面试题
2017/02/20 Javascript
ionic实现底部分享功能
2017/05/11 Javascript
vue项目中实现图片预览的公用组件功能
2018/10/26 Javascript
基于mpvue的简单弹窗组件mptoast使用详解
2019/08/02 Javascript
微信小程序3D轮播实现代码
2019/09/19 Javascript
原生js实现ajax请求和JSONP跨域请求操作示例
2020/03/14 Javascript
vue组件开发之tab切换组件使用详解
2020/08/21 Javascript
[46:10]2014 DOTA2国际邀请赛中国区预选赛 CnB VS HGT
2014/05/21 DOTA
redis之django-redis的简单缓存使用
2018/06/07 Python
Python如何基于selenium实现自动登录博客园
2019/12/16 Python
python 微信好友特征数据分析及可视化
2020/01/07 Python
Django 实现将图片转为Base64,然后使用json传输
2020/03/27 Python
如何用Python和JS实现的Web SSH工具
2021/02/23 Python
EJB需直接实现它的业务接口或Home接口吗,请简述理由
2016/11/23 面试题
Java面试题:请说出如下代码的输出结果
2013/04/22 面试题
酒店管理求职信范文
2014/04/06 职场文书
2014年会策划方案
2014/05/11 职场文书
体现团队精神的口号
2014/06/06 职场文书
2015年中学元旦晚会活动方案
2014/12/09 职场文书
2016年读书月活动总结范文
2016/04/06 职场文书
一文搞懂MySQL索引页结构
2022/02/28 MySQL