发布网友 发布时间:2022-04-23 07:05
共5个回答
热心网友 时间:2022-04-18 05:54
python默认就是unicode存储。如果是从文件读取的,在open的参数中指定encoding关键字参数就行。如下:
#coding=utf-8/import json /def LoadQuestion(): /f = open("test.json",'r') qas = json.load(f) question = qas['documents'] /return question/t = LoadQuestion() /print str(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')
热心网友 时间:2022-04-18 07:12
loads取出后是unicode?我怀疑你用的是python3追答如果是python2系列就可以放心大胆的去使用了。loads载入?我不太记得了。我一般记得数据库是建立一个cursor然后是fetch过来的。 一条一条的。这个DBAPI会自动做些变量转换。
如果type(s)的确是unicode,直接print s.encode("gbk","ignore)
热心网友 时间:2022-04-18 08:47
可以试试 str.encode('gbk','ignore') 或者 str.encode('gb2312','ignore')
热心网友 时间:2022-04-18 10:38
1、python2与python3稍微有点区别
2、python2中默认的字符编码格式都是unicode,在字符串前加'u',表示unicode 编码
3、将unicode转换成中文,只需要用deconde解码就可以了
>>> u='欢迎'python2编码环境比较复杂,在这里不做详细说明
热心网友 时间:2022-04-18 12:46
s.encode('utf8')或者s.encode('gb2312')试试~追问不行追答额……s.decode('raw_unicode_escape')再试试这个……