python3进行汉字和unicode码的转换
输出某个unicode码对应的汉字和某个汉字对应的unicode编码。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
# -*- coding=UTF-8 -*-
str1 = "\u6000"#某个汉字的unicode码
str2='一'#汉字一
#print(str1.encode('utf-8').decode('unicode_escape'))
print(str1)#输出str1对应的汉字
print(str2.encode('unicode_escape'))#输出汉字一对应的unicode编码
其实也可以用语句:
str1.encode('utf-8').decode('unicode_escape')
但是,当这样写时:
str1 = "\u6000"#某个汉字的unicode码
print(str1.encode('utf-8').decode('unicode_escape'))
结果为:
改成:
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
str1 = "\\u6000"#某个汉字的unicode码
print(str1.encode('utf-8').decode('unicode_escape'))
结果为:
结果正确。
python默认用unicode编码,所以可以直接用print输出带有’\u’的字符串,’\u’是转义字符,表示unicode编码。
当我们从txt或者从其他地方读取字符串时,如果用的’\u’,当我们读进来的时候,就变成了’\u’,此时要用:
str1.encode('utf-8').decode('unicode_escape')
来进行转码,然后输出。