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读写Excel文件的实例
Nov 01 Python
在Heroku云平台上部署Python的Django框架的教程
Apr 20 Python
python检查序列seq是否含有aset中项的方法
Jun 30 Python
Go语言基于Socket编写服务器端与客户端通信的实例
Feb 19 Python
Python实现批量压缩图片
Jan 25 Python
Tensorflow使用支持向量机拟合线性回归
Sep 07 Python
对Python3 goto 语句的使用方法详解
Feb 16 Python
python针对Oracle常见查询操作实例分析
Apr 30 Python
Python内置函数property()如何使用
Sep 01 Python
如何使用scrapy中的ItemLoader提取数据
Sep 30 Python
Python竟然能剪辑视频
May 25 Python
yolov5返回坐标的方法实例
Mar 17 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
一个oracle+PHP的查询的例子
2006/10/09 PHP
php访问查询mysql数据的三种方法
2006/10/09 PHP
php pcntl_fork和pcntl_fork 的用法
2009/04/13 PHP
简单的PHP缓存设计实现代码
2011/09/30 PHP
打造超酷的PHP数据饼图效果实现代码
2011/11/23 PHP
PHP从尾到头打印链表实例讲解
2018/09/27 PHP
PHP7 mongoDB扩展使用的方法分享
2019/05/02 PHP
基于JQuery的一句代码实现表格的简单筛选
2010/07/26 Javascript
使用JavaScript制作一个简单的计数器的方法
2015/07/07 Javascript
jQuery实现立体式数字动态增加(animate方法)
2016/12/21 Javascript
JS控制鼠标拒绝点击某一按钮的实例
2017/12/29 Javascript
vue自定义指令directive实例详解
2018/01/17 Javascript
利用adb shell和node.js实现抖音自动抢红包功能(推荐)
2018/02/22 Javascript
浅谈微信JS-SDK 微信分享接口开发(介绍版)
2018/08/15 Javascript
Vue 路由切换时页面内容没有重新加载的解决方法
2018/09/01 Javascript
vue.extend与vue.component的区别和联系
2018/09/19 Javascript
vue axios基于常见业务场景的二次封装的实现
2018/09/21 Javascript
实例分析vue循环列表动态数据的处理方法
2018/09/28 Javascript
layui时间控件选择时间范围的实现方法
2019/09/28 Javascript
Javascript如何实现双指控制图片功能
2020/02/25 Javascript
vue集成openlayers加载geojson并实现点击弹窗教程
2020/09/24 Javascript
jquery实现点击左右按钮切换图片
2021/01/27 jQuery
Python文件右键找不到IDLE打开项解决办法
2015/06/08 Python
Python人脸识别第三方库face_recognition接口说明文档
2019/05/03 Python
Python模块的制作方法实例分析
2019/12/21 Python
pandas实现DataFrame显示最大行列,不省略显示实例
2019/12/26 Python
Selenium元素定位的30种方式(史上最全)
2020/05/11 Python
css3 border-image使用说明
2010/06/23 HTML / CSS
美国睫毛、眉毛精华液领导品牌:RevitaLash Cosmetics
2018/03/26 全球购物
物流经理自我评价
2013/09/23 职场文书
2014年创先争优活动总结
2014/05/04 职场文书
大专毕业生自我鉴定范文(2篇)
2014/09/27 职场文书
运动员入场前导词
2015/07/20 职场文书
数据结构课程设计心得体会
2016/01/15 职场文书
股东出资协议书
2016/03/21 职场文书
解决mysql问题:由于找不到MSVCR120.dll,无法继续执行代码
2021/06/26 MySQL