作者verybada ()
看板Python
標題[問題] linux下採用utf8寫的code到windows會不能跑?
時間Mon Apr 25 17:24:43 2011
自回一下
解法是: 標頭宣告還是使用utf8,只是在寫中文的時候要加上u的前綴字
例如
print u"測試"
--
大家好
想請問一下
我在linux下使用utf8編碼開發程式,而windows採用的編碼是cp950
當我在windows去fork linux寫好的code時會出現編碼錯誤
所以我將開頭的 #-*-coding:utf-9-*- 改成 #-*-coding:cp950-*-
但這樣在windows還是會跳出錯誤,如果我採用i18n的做法可以解決掉這個問題嗎?
或是我可以使用sys.platform根據不同來指定不同的coding(不過這樣好像又是上面
的問題)
或是有其他的解法呢? 謝謝:wq
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.201.137
1F:推 POSIX:我猜應該是你的程式在處理輸入的字串的地方出問題 04/25 17:34
2F:→ verybada:我的程式沒有給使用者輸入的部分欸 04/25 17:35
3F:→ Holocaust123:改成#-*-coding:cp950-*- 檔案並不會真的變成cp950 04/25 17:38
4F:→ Holocaust123:要把.py檔轉成cp950才行 04/25 17:38
5F:→ Holocaust123:"i18n的做法"指的是什麼(第一次聽到) 04/25 17:39
6F:→ Holocaust123:建議PO code跟錯誤訊息 不然其實挺隔空抓藥的... 04/25 17:40
8F:→ verybada:code的話 可能要麻煩到github去fork (因為蠻多隻的= =") 04/25 17:43
10F:→ verybada:錯誤為UnicodeDecode Error: cp950 codec cant decode 04/25 17:46
11F:→ verybada:bytes 04/25 17:46
※ 編輯: verybada 來自: 61.217.237.170 (04/25 20:44)
※ 編輯: verybada 來自: 61.217.237.170 (04/25 20:45)