PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
Python
[問題] 中文編碼問題
作者:
Czero
(悠閒)
2015-07-15 21:44:07
使用python3~
假設我取得一個中文已經編碼過的字串
d='\\xab\\xa2\\xc5o'
print(d)
我想要印出原始中文該如何印呢?
原先想法以為是print(('b"'+d+'"').decode())
但似乎沒這種寫法XD
請教各位大大~~
作者:
ccwang002
(亮)
2015-07-15 22:18:00
Py3 字串跟 bytes 是很明確的,d 應該要是 bytesd = b'\xab\xa2\xc5o'; d.decode('big5') # 哈囉如果 d 是從別的字串 encode 完只複製它的值但是 str就要用一個特別的編碼 latin-1 (在 Py 2<->3 常用)d = '\xab\xa2\xc5o'.encode('latin1').decode('big5')但你今天是 '\\xab' 這個跟 '\xab' 意思完全不一樣s_crapped ='\\xab...' 我只有想到很 hack 的做法eval('b"%s"' % s_crapped).decode('big5')
作者:
uranusjr
(â†é€™äººæ˜¯è¶…級笨蛋)
2015-07-15 22:55:00
有一個叫 string_escape 的編碼可以用啊, Python 3 要用 unicode_escape
作者:
Czero
(悠閒)
2015-07-15 23:12:00
喔喔感謝上面兩位回覆, c大兩種假設基本上都會碰到...不過eval這方式還真特別,裡面這樣表達是指s_crapped會替換%s嗎?而這樣會解決\\問題?!有點神奇
作者:
ccwang002
(亮)
2015-07-15 23:29:00
會變成 eval('b"\\xab..."') 但 eval 一般少用
繼續閱讀
[問題] 新手畫圖的問題
cc0102
[徵才] 創雲數據股份有限公司
wcmein
[問題] 滑鼠偵測
pandadao
[問題] funcion的參數問題
tyc5116
[問題] Python IDE or IDLE ?
xxxx5801
[問題] AJAX的Scraping
wilson85771
[問題] 新手請教迴圈開啟檔案問題
nendi
[問題] a[1:3]會馬上複製嗎?
why8ther
[問題] 請問這樣解釋理解是正確的嗎?
kobe770205
[推荐] 新手學Python有沒有推薦的書
abcgo
Links
booklink
Contact Us: admin [ a t ] ucptt.com