84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
想请问下拿到一串unicode编码串,要怎么才能转换中文输出
我发现直接
print u'\u4ed7\u5251\u5929\u6daf'
或者
a = u"\u4ed7\u5251\u5929\u6daf" print a
是可以输出中文
但是如果把串赋值到变量,用decode,encode转换都不行
a = '\u4ed7\u5251\u5929\u6daf'
不知道怎样print a才能输出中文了?
人生最曼妙的风景,竟是内心的淡定与从容!
在Python3中,字串型全改成unicode的了,你如下用沒問題,輸出是一樣的
# -*- coding: utf-8 -*- a = u"\u4ed7\u5251\u5929\u6daf" print(a, len(a), type(a)) b = "\u4ed7\u5251\u5929\u6daf" print(b, len(b), type(b))
而在Python2.7中,加u表示unicode,不加表示字符串,所以你直接去掉u並得到的並不是等價的字符串,你可以分別打印數據類型、字符串長度就能看出來
最後一句話a = 'u4ed7u5251u5929u6daf'a 實際上已經是字符串了因此把轉換成unicode才能print打印中文,可以使用print a.decode('unicode-escape')要把參考參考可以使用print a.decode('unicode-escape')要把參考參考
最後一句 a = 'u4ed7u5251u5929u6daf' 為什麼要把引號前的u丟掉呢?
Python字串前面那個u表示這個字串要以unicode編碼來解析。 你使用decode,意思是你要將'u4ed7u5251u5929u6daf'這個字串,轉成unicode編碼。
在Python3中,字串型全改成unicode的了,你如下用沒問題,輸出是一樣的
而在Python2.7中,加u表示unicode,不加表示字符串,所以你直接去掉u並得到的並不是等價的字符串,你可以分別打印數據類型、字符串長度就能看出來
最後一句話
可以使用🎜print a.decode')要把http://stackoverflow.com/questions/10268518/python-string-to-unicode🎜a = 'u4ed7u5251u5929u6daf'
a 實際上已經是字符串了
因此把轉換成unicode才能print打印中文,
可以使用
print a.decode('unicode-escape')要把參考參考
可以使用
print a.decode('unicode-escape')要把參考參考
最後一句 a = 'u4ed7u5251u5929u6daf' 為什麼要把引號前的u丟掉呢?
Python字串前面那個u表示這個字串要以unicode編碼來解析。
你使用decode,意思是你要將'u4ed7u5251u5929u6daf'這個字串,轉成unicode編碼。