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 自动安装 Rising 杀毒软件
Apr 24 Python
Python脚本实现代码行数统计代码分享
Mar 10 Python
python去除空格和换行符的实现方法(推荐)
Jan 04 Python
Python实现列表删除重复元素的三种常用方法分析
Nov 24 Python
Python实现邮件的批量发送的示例代码
Jan 23 Python
python中将一个全部为int的list 转化为str的list方法
Apr 09 Python
PyQt5每天必学之创建窗口居中效果
Apr 19 Python
Python修改文件往指定行插入内容的实例
Jan 30 Python
python实现图像拼接
Mar 05 Python
互斥锁解决 Python 中多线程共享全局变量的问题(推荐)
Sep 28 Python
python tqdm实现进度条的示例代码
Nov 10 Python
python 闭包函数详细介绍
Apr 19 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
Ajax+PHP边学边练 之五 图片处理
2009/12/03 PHP
在PHP中PDO解决中文乱码问题的一些补充
2010/09/06 PHP
关于php连接mssql:pdo odbc sql server
2011/07/20 PHP
php实现微信企业号支付个人的方法详解
2017/07/26 PHP
jQuery前台数据获取实现代码
2011/03/16 Javascript
ASP.NET jQuery 实例10 动态修改hyperlink的URL值
2012/02/03 Javascript
javaScript(JS)替换节点实现思路介绍
2013/04/17 Javascript
jquery操作checkbox实现全选和取消全选
2014/05/02 Javascript
javascript实现仿IE顶部的可关闭警告条
2015/05/05 Javascript
javascript表单验证大全
2015/08/12 Javascript
浅谈javascript的Array.prototype.slice.call
2015/08/31 Javascript
js多功能分页组件layPage使用方法详解
2016/05/19 Javascript
vue分类筛选filter方法简单实例
2017/03/30 Javascript
原生JS实现图片无缝滚动方法(附带封装的运动框架)
2017/10/01 Javascript
vue.js 2.*项目环境搭建、运行、打包发布的详细步骤
2019/05/01 Javascript
django框架之cookie/session的使用示例(小结)
2018/10/15 Python
Python对象与引用的介绍
2019/01/24 Python
深入了解和应用Python 装饰器 @decorator
2019/04/02 Python
使用 Python 玩转 GitHub 的贡献板(推荐)
2019/04/04 Python
Python直接赋值、浅拷贝与深度拷贝实例分析
2019/06/18 Python
pycharm new project变成灰色的解决方法
2019/06/27 Python
python实现身份证实名认证的方法实例
2019/11/08 Python
使用python-pptx包批量修改ppt格式的实现
2020/02/14 Python
python 匿名函数与三元运算学习笔记
2020/10/23 Python
印尼网上商店:Alfacart.com
2019/03/11 全球购物
岗位职责范本
2013/11/23 职场文书
银行办理业务介绍信
2014/01/18 职场文书
三月雷锋月活动总结
2014/07/03 职场文书
党委班子对照检查材料
2014/08/19 职场文书
党的群众路线教育实践活动个人整改方案
2014/09/21 职场文书
井冈山红色之旅感想
2014/10/07 职场文书
离婚协议书怎样才有法律效力
2014/10/10 职场文书
学校推普周活动总结
2015/05/07 职场文书
2015企业年终工作总结范文
2015/05/27 职场文书
分析mysql中一条SQL查询语句是如何执行的
2021/06/21 MySQL
SQL实战演练之网上商城数据库商品类别数据操作
2021/10/24 MySQL