python中怎样将unicode转换成原来的中文

python默认就是unicode存储。如果是从文件读取的,在open的参数中指定encoding关键字参数就行。如下:

#coding=utf-8/importjson /defLoadQuestion(): /f=open("test.json",'r') qas=json.load(f) question=qas['documents'] /returnquestion/t=LoadQuestion() /printstr(t).decode("unicode-escape")

拓展资料专:

通常python2时所属有IO读写都是byte方式。也就是编码后的。java也是这样子。只有python3还有某些特定的模块才会自动将byte重新转换成unicode

在python2里的确可以使用s.decode('gbk','ignore')之类的变成unicode。不过在python3里应该是这样子, s.encode('gbk','ignore')这样就变成了byte

如果你喜欢 utf-8,可以s.encode(‘utf-8','ignore')和s.decode(‘utf-8','ignore')

② Python json unicode转中文

importsys
reload(sys)
sys.setdefaultencoding("utf-8")

result=[[u'9.6',u'50'],1,True,u'1292052',[u'u72afu7f6a',u'u5267u60c5'],[u'u7f8eu56fd'],u'',u'1994-09-10',15,725531,u'9.6']

f=open('data.csv','w')

foriinresult:
iftype(i)islist:
forjini:
iftype(j)==intortype(j)==floatortype(j)==bool:
j=str(j)+','
else:
j=j.encode('gbk')+','
printj,
print>>f,j,
else:
iftype(i)==intortype(i)==floatortype(i)==bool:
i=str(i)+','
else:
i=i.encode('gbk')+','
printi,
print>>f,i,

f.close()

③ Python如何将Unicode中文字符串转换成 string字符串

Unicode字符串可以用多种方式编码为普通字符串,假设unicodestring = u"Hello world",依照所选择的编码(encoding),如下:

1、#将Unicode转换成普通的Python字符串:"编码(encode)"。

(3)unicodepythonjson扩展阅读:

Python转换字符和字符串的原因:为了处理不适合用ASCII字符集表示的数据。

在以ASCII码为中心的语言和环境中,字节和字符被当做相同的事物。由于一个字节只能有256个值,这些环境就受限为只支持256个字符Unicode码,另一方面,有数万个字符,那意谓着每个Unicode字符占用多个字节,因此,你需要在字符和字节之间作出区别。

(1)UTF-8编码能处理任何的Unicode字符。它也是与ASCII码向后兼容的,因此一个纯粹的ASCII码文件也能被考虑为一个UTF-8文件,而且一个碰巧只使用ASCII码字符的 UTF-8文件和拥有同样字符的ASCII码文件是相同的。

这个特性使得UTF-8的向后兼容性非常好,尤其使用较旧的Unix工具时。UTF-8 无疑地是在 Unix上的占优势的编码。它主要的弱点是对东方文字是非常低效的。

(2)UTF-16编码在微软的操作系统和Java环境下受到偏爱。它对西方语言是比较低效,但对于东方语言是更有效率的。一个UTF-16 的变体有时叫作UCS-2 。

(3)ISO-8859编码系列是256个字符的ASCII码的超集。他们不能够支援所有的Unicode码字符;他们只能支援一些特别的语言或语言家族。

ISO-8859-1,也既Latin-1,包括大多数的西欧和非洲语言,但是不含阿拉伯语。ISO-8859-2,也既Latin-2,包括许多东欧的语言,像是匈牙利语和波兰语。

④ Python,json.loads(r.text)一直出错

json里面的字符串都是unicode(见http://json.org/),所以在dd中不可能出现utf-8的kv。loads函数的参数encoding是指定字符串j_str的编码内。将字符串j_str读到容dd时,会按这个编码进行解码成unicode。
1dd = json.loads(j_str, encoding='utf-8') #dd中的字符串都是unicode

⑤ python一行式解析json怎么避免中文转化为unicode编码

比如有一个抄json文件test.json,内容为:
{"one":{"two":"中文"}}
想要分层次的查看,于是:
cat test.json | python3 -m json.tool
然后输出为:
{ "one": { "two": "\u4e2d\u6587"
}
}

然而中文已经转换成了unicode编码,如何避免这种转换?
必须转!
json是用于交换数据的,Unicode等 多字节字符 会在传输过程中出错。
"\u4e2d\u6587" ,严格的说,这不是utf格式编码,而是 unicode转义。
更新
用repr()保存json对象

>>> import json>>> j = json.loads('{"one":{"two":"中文"}}')>>> print(j)
{'one': {'two': '中文'}}>>> j['one']['two']'中文'>>> d =json.mps(j)>>> print(d)
{"one": {"two": "\u4e2d\u6587"}}>>> r = repr(j)>>> print(r)
{'one': {'two': '中文'}}>>> with open('test.json','w') as w:
w.write(r)

⑥ python json怎么修改json数据

Json简介:Json,全名 JavaScript Object Notation,是一种轻量级的数据交换格式。Json最广泛的应用是作为AJAX中web服务器和客户端的通讯的数据格式。现在也常用于http请求中,所以对json的各种学习,是自然而然的事情。Python的官网网址:https://docs.python.org/2/library/json.html?highlight=json#mole-json

Json API 使用:python在版本2.6之前,是需要先下载包,安装后才能使用的,有点类似现在的RF内使用SeleniumLibrary一样。但是在2.6中,官方文档(https://docs.python.org/2.6/whatsnew/2.6.html)明显指出,“有一些重要的新的软件包添加到了标准库,比如multiprocessing 和json,但是跟python 3比,2.6的这些包不会引进更多的新功能。"于是安装python2.6以上版本的童鞋,可以不需要下载json包,直接在所需的地方就import json 即可使用,在安装目录下的Lib 下,看到这两个包(点进去仔细阅读这些源码,会有更多的收获,)如下文所示:

⑦ python2 json 转义问题

s="\xe2\x99\xab"
c=s.decode('string_escape')
print(c)

⑧ python中json.loads()为什么都变成unicode了加了encoding='utf-8'也没用。我希望得到utf8的k-v,怎么做

json里面的字符串都是unicode(见http://json.org/),所以在dd中不可能出现utf-8的kv。loads函数的参数encoding是指定字符串专j_str的编码属。将字符串j_str读到dd时,会按这个编码进行解码成unicode。

dd=json.loads(j_str,encoding='utf-8')#dd中的字符串都是unicode

⑨ python在mysql数据库中执行插入操作,插入json.mps后的包含中文的json对象,数据库中文显示为Unicode

插入时保证是中文就行了,数据库建议用utf8。

⑩ 为什么python运行json会提示JsonDecodeError

是编码的问题
按Ctrl+c复制你写的代码,新建一个文档,再粘贴,不要设置编码,再运行,就OK了
或者将编码设成GBK