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 相关文章推荐
Django1.3添加app提示模块不存在的解决方法
Aug 26 Python
Python中函数的用法实例教程
Sep 08 Python
python一键升级所有pip package的方法
Jan 16 Python
Python中生成器和迭代器的区别详解
Feb 10 Python
python实现决策树分类
Aug 30 Python
python实现自动登录
Sep 17 Python
python基于FTP实现文件传输相关功能代码实例
Sep 28 Python
使用pandas实现连续数据的离散化处理方式(分箱操作)
Nov 22 Python
python线程定时器Timer实现原理解析
Nov 30 Python
python如何通过twisted搭建socket服务
Feb 03 Python
Python如何访问字符串中的值
Feb 09 Python
python 实现IP子网计算
Feb 18 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
PHP新手上路(十三)
2006/10/09 PHP
PHP设计模式之工厂模式与单例模式
2016/09/28 PHP
支持ie与FireFox的剪切板操作代码
2009/09/28 Javascript
JavaScript Event学习第五章 高级事件注册模型
2010/02/07 Javascript
JS对字符串编码的几种方式使用指南
2015/05/14 Javascript
js实现带圆角的多级下拉菜单效果
2015/08/28 Javascript
JS+CSS实现简单滑动门(滑动菜单)效果
2015/09/19 Javascript
Vue.js第三天学习笔记(计算属性computed)
2016/12/01 Javascript
利用Bootstrap实现表格复选框checkbox全选
2016/12/21 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
js实现自定义进度条效果
2017/03/15 Javascript
浅谈JsonObject中的key-value数据解析排序问题
2017/12/06 Javascript
uni-app自定义导航栏按钮|uniapp仿微信顶部导航条功能
2019/11/12 Javascript
JavaScript如何处理移动端拍摄图片旋转问题
2019/11/16 Javascript
使用JS实现鼠标放上图片进行放大离开实现缩小功能
2021/01/27 Javascript
Cython 三分钟入门教程
2009/09/17 Python
python字符串连接的N种方式总结
2014/09/17 Python
用Python进行TCP网络编程的教程
2015/04/29 Python
Python实现PS滤镜的万花筒效果示例
2018/01/23 Python
使用selenium模拟登录解决滑块验证问题的实现
2019/05/10 Python
Python学习笔记之读取文件、OS模块、异常处理、with as语法示例
2019/06/04 Python
Python的Lambda函数用法详解
2019/09/03 Python
html5手机端页面可以向右滑动导致样式受影响的问题
2018/06/20 HTML / CSS
美国美妆网站:B-Glowing
2016/10/12 全球购物
新农村建设标语
2014/06/24 职场文书
党员学习中共十八大思想报告
2014/09/12 职场文书
学院党的群众路线教育实践活动整改方案
2014/10/04 职场文书
2014年学生会工作总结范文
2014/11/07 职场文书
2014年小学英语教师工作总
2014/12/03 职场文书
团代会邀请函
2015/02/02 职场文书
清明节寄语2015
2015/03/23 职场文书
民事起诉状范文
2015/05/19 职场文书
国王的演讲观后感
2015/06/03 职场文书
反邪教观后感
2015/06/11 职场文书
Java实现贪吃蛇游戏的示例代码
2022/09/23 Java/Android
CSS link与@import的区别和用法解析
2023/05/07 HTML / CSS