这篇文章主要介绍了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()

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

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

本文地址: http://www.cppcns.com/jiaoben/python/291989.html

python3编码得到中文_Python3的unicode编码转换成中文的问题及解决方案相关推荐

  1. unicode码转换成中文

    unicode码转换成中文 通过正则匹配出data字符串中的unicode,然后将其转成中文,再用中文替换掉原有的unicode java片段: /*** 将unicode码转换成中文* @param ...

  2. vba 将http.responseText返回的 unicode字符转换成中文

    最近接触到vba 中从网页返回的数据中有类似"\u97f3\u4e50\u8be6\u60c5\u9875\u5217\u8868\u5728\"这种编码,但是我想转换成中文,查了 ...

  3. unicode字符转换成中文

    我们返回数据的时候有时候会返回unicode格式的字符串,我们要把这种字符串转换成中文 具体要怎么做,看下面的案例: data = '\u5317\u4eac' print type(data) pr ...

  4. SAP ABAP实用技巧介绍系列之将unicode字符转换成中文

    Created by Jerry Wang, last modified on May 29, 2014 输入unicode格式的字符: 输出是转换之后的对应中文字符: 代码如下. class_con ...

  5. python将数字转变为中文读法-python中将阿拉伯数字转换成中文的实现代码

    代码如下: #!/usr/bin/python #-*- encoding: utf-8 -*- import types class NotIntegerError(Exception): pass ...

  6. oc unicode转换成中文

    遇到了unicode如何转换成中文的问题,还是要自己记录下,留着备用 + (NSString *)replaceUnicode:(NSString *)unicodeStr { NSString *t ...

  7. c#金额转换成中文大写金额

    c#金额转换成中文大写金额 原文:c#金额转换成中文大写金额 2018-08-24 转别人 c#金额转换成中文大写金额 /// <summary>/// 金额转换成中文大写金额/// &l ...

  8. 中文格式_财务必会Excel技巧,将数字转换成中文的5种方式

    你还在纠结如何把数字转换成中文大小写吗?下面和大家一起来学习把数字转换成中文的5种方法. 方式一:NUMBERSTRING函数 语法=NUMBERSTRING(数值,选项) 数值:被转换为中文字符串的 ...

  9. python3转为unicode编码_Python3的unicode编码转换成中文的问题及解决方案

    python中怎样将unicode转换成原来的中文?[这世界上一定有另一个小编做着小编不敢做的事过着小编想过的生活] 前端将中文编码后传到后台,后台对传来的数据进行json.dumps存入mysql数 ...

  10. django JsonResponse返回中文时显示unicode编码(\u67e5\u8be2)

    django JsonResponse返回中文时显示unicode编码(\u67e5\u8be2) 关注公众号"轻松学编程"了解更多. 原因 这个unicode编码,是python ...

最新文章

  1. ArcGIS 9.3 安装之 Server的安装
  2. python如何在官网下载1005无标题,如何安装python cairo?
  3. 深入浅出oracle锁原理篇
  4. Java 并发编程ReentrantLock--源码解析(底层AQS实现)
  5. vim插件管理器minpac安装及使用
  6. python连载第12篇 for循环 源码+ 答案
  7. Mac下新安装的MySQL无法登陆root用户解决方法
  8. Vector3.MoveTowards与Vector3.Lerp()区别
  9. highslide图片查看特效
  10. 在Android中使用自带API操作Json
  11. java通讯录管理系统答辩_java版通讯录管理系统
  12. 服务器如何安装虚拟声卡,虚拟声卡驱动VirtualAudioCable安装使用设置教程
  13. 阿里出品的在线图表制作工具
  14. 做项目中遇到过得难点
  15. 软件项目管理存在的问题及改进措施
  16. k8s教程(pod篇)-容器获取pod信息(Downward API)
  17. framemaker 换行
  18. 解决微信图标在任务栏显示白纸的方法
  19. [原创]中国大陆民谣盘点系列(1) 沈庆《这么多年以来》
  20. 业务和商业才是技术的驱动力

热门文章

  1. 恐怖的死亡艺术,稻川淳二为自己办了场VR葬礼
  2. OpenCv图像像素操作
  3. git提交及打标签(tag)流程
  4. 安装Visual Studio 2013以及简单使用
  5. Google工程师多图详解Android架构
  6. 删除已配对的View Security Server、View Replica Server
  7. python生成曲线图
  8. for_else,break——python小练
  9. 手机电脑同屏_把手游变成端游的同屏神器,就是这款Onebit“X9”了!
  10. C#三层架构通用数据库访问类SQLHerper总结