Python3的unicode编码转换成中文的问题及解决方案


Posted in Python onDecember 10, 2019

这篇文章主要介绍了Python3的unicode编码转换成中文的问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

从别的地方搬过来的,担心以后不容易搜索到,就收集过来。

我当时面临的问题是要从C++发json代码出来,用python写了个server,然后返回给C++程序,结果收到的是:

httpSvrDataCbUser: {"tranNO": "0808ad498670dc996", "data": "\u65b0A1EY16", "ver": "1.0", "sendTime": "2019-12-10 00:23:51", "tranType": "2001"}

我发过去的是utf-8编码,中间有中文,"新A1EY16",结果发回来的却是:"\u65b0A1EY16"

9102年,大部分人已经受尽了python2里面unicode的折磨,转向了python3。

python3似乎对一切的unicode都那么的友好,当一个字符串里存在unicode的时候,只要字符串是硬编码的,就可以转换成中文打印在控制台上,如:

s = ‘\u7b14\u8bb0'
print(s)

你得到的就是中文汉字。

但是,假如你。。的这段含有‘\u'的unicode编码不是硬编码进脚本的,而是通过requests在网上爬的。。。那么你会发现,你打印出来的,还是长这样的unicode编码,换句话说,解释器这个时候根本就没认出这东西原来是unicode编码,当成普通的字符序列了。

百度找到了最好的解决方法:在这个unicode串后面加上:

s = s.decode().encode(‘unicode_escape')
print(s)

它就打印出汉字了

python3中没有这种问题,所以最简单的方法是引入__future__模块,把新版本的特性导入到当前版本

from __future__ import unicode_literals
print json.dumps(m,ensure_ascii=False)
=>{"a": "你好"}

在写入文件的时候出现了Python2.7的UnicodeEncodeError: ‘ascii' codec can't encode异常错误

大神的解决方法:

不使用open打开文件,而使用codecs:

from __future__ import unicode_literals
import codecs
fp = codecs.open('output.txt', 'a+', 'utf-8')
fp.write(json.dumps(m,ensure_ascii=False))
fp.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用python将mdb数据库文件导入postgresql数据库示例
Feb 17 Python
Python selenium如何设置等待时间
Sep 15 Python
老生常谈python函数参数的区别(必看篇)
May 29 Python
PyQt5实现下载进度条效果
Apr 19 Python
[原创]Python入门教程1. 基本运算【四则运算、变量、math模块等】
Oct 28 Python
python 画三维图像 曲面图和散点图的示例
Dec 29 Python
python导入pandas具体步骤方法
Jun 23 Python
wxpython多线程防假死与线程间传递消息实例详解
Dec 13 Python
Python文件操作基础流程解析
Mar 19 Python
python Protobuf定义消息类型知识点讲解
Mar 02 Python
Python合并多张图片成PDF
Jun 09 Python
Python可视化神器pyecharts绘制地理图表
Jul 07 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
Dec 10 #Python
python3 webp转gif格式的实现示例
Dec 10 #Python
Spring Cloud Feign高级应用实例详解
Dec 10 #Python
flask 使用 flask_apscheduler 做定时循环任务的实现
Dec 10 #Python
使用opencv将视频帧转成图片输出
Dec 10 #Python
django框架cookie和session用法实例详解
Dec 10 #Python
python selenium实现发送带附件的邮件代码实例
Dec 10 #Python
You might like
浅析Yii2中GridView常见操作
2016/04/22 PHP
php json相关函数用法示例
2017/03/28 PHP
用Js实现的动态增加表格示例自己写的
2013/10/21 Javascript
给文字加上着重号的JS代码
2013/11/12 Javascript
jquery中交替点击事件的实现代码
2014/02/14 Javascript
关于jQuery判断元素是否存在的问题示例探讨
2014/07/21 Javascript
node.js下when.js 的异步编程实践
2014/12/03 Javascript
JS定时器用法分析【时钟与菜单中的应用】
2016/12/21 Javascript
微信小程序 radio单选框组件详解及实例代码
2017/01/10 Javascript
vue.js select下拉框绑定和取值方法
2018/03/03 Javascript
Electron + vue 打包桌面操作流程详解
2019/06/24 Javascript
angularjs1.X 重构controller 的方法小结
2019/08/15 Javascript
快速解决layui弹窗按enter键不停弹窗的问题
2019/09/18 Javascript
浅谈vue中使用编辑器vue-quill-editor踩过的坑
2020/08/03 Javascript
利用 JavaScript 实现并发控制的示例代码
2020/12/31 Javascript
讲解python参数和作用域的使用
2013/11/01 Python
对Python 内建函数和保留字详解
2018/10/15 Python
python绘制多个子图的实例
2019/07/07 Python
python单例模式的多种实现方法
2019/07/26 Python
学习和使用python的13个理由
2019/07/30 Python
Manjaro、pip、conda更换国内源的方法
2020/11/17 Python
南非最受欢迎的时尚品牌:MRP
2016/09/18 全球购物
台湾团购、宅配和优惠券:17Life
2017/08/14 全球购物
德国孕妇装和婴童服装网上商店:bellybutton
2018/04/12 全球购物
SneakerStudio英国:最佳运动鞋商店
2019/05/22 全球购物
Fox Racing英国官网:越野摩托车和山地自行车服装
2020/02/26 全球购物
LACOSTE波兰官网:Polo衫、服装和鞋类
2020/09/29 全球购物
计算机专业个人求职自荐信
2013/09/21 职场文书
统计学专业毕业生的自我评价分享
2013/11/28 职场文书
大一新生学期自我评价
2014/04/09 职场文书
请假条格式范文
2014/04/10 职场文书
大学新学期计划书
2014/04/28 职场文书
学生期末评语大全
2014/04/30 职场文书
美食节目策划方案
2014/05/31 职场文书
2015年房地产销售工作总结
2015/04/20 职场文书
MySQL下使用Inplace和Online方式创建索引的教程
2021/05/26 MySQL