看板 Python 關於我們 聯絡資訊
讀檔案時路徑內有中文字,但是 six.u 不支援 ascii 以外的編碼 所以像底下這樣寫會回報找不到檔案路徑 import six with open(six.u('C:\\中文.txt'), 'r') as f: pass # IOError: [Errno 2] No such file or directory: u'C:\\\xa4\xa4\xa4\se5.txt' 請問有沒有能讓 py2 py3 通用又不用分成兩份程式碼的寫法? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.46.138.48
ykjiang:嗯,你的 OS 是?暈倒系統的話 service pack 裝到多少了? 05/19 02:50
os653:作業系統是 Windows 8,已經 update 到最新版了 05/19 02:59
os653:不過這是 decode 的問題,跟 OS 沒關係吧?還是我弄錯了? 05/19 03:00
kdjf:open()沒有不相容的點吧? 05/19 08:50
legnaleurc:你的 source 是 big5 05/19 16:02
changyuheng:一定要用 six 嗎? 05/19 22:47
os653:有其他方法也可以呀,只是希望不要多太多code 05/20 00:22
changyuheng:soure code 用 utf-8,with open(u'c:\\中文.txt', 'r 05/20 03:14
ykjiang:之前遇過XP在不同SP下,檔名的 unicode 字元支持度不一樣 05/20 12:30
ykjiang:所以發生 It works on my computer 的尷尬事件 05/20 12:31
swpoker:你的py是big 編碼的嗎 05/20 12:57