[問題] invalid start byte

看板Python作者 (evenrain)時間12年前 (2013/07/11 10:19), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/1
遇到一個詭異的問題是 我的程式在使用者的電腦會出現 'utf8' codec can't decode byte 0xbe in position 46: invalid start byte 這樣的問題,但是在我的電腦卻怎麼都測不出來 請問這個情形是什麼狀況? 我是用 PySide 寫 GUI 程式,再透過 py2exe 打包成可執行檔 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.190.212

07/11 20:49, , 1F
就你程式本文的編碼跟使用者環境的編碼不一致
07/11 20:49, 1F

07/11 20:51, , 2F
加個這個 pep-0263 強制用某個編碼讀應該就可以了
07/11 20:51, 2F
我的每隻 .py 都有加 #-*- coding: utf-8 -*- (其實是 pydev 加的 XD)

07/11 21:14, , 3F
先編譯成 pyc 再包成 exe 就不會有這種問題
07/11 21:14, 3F
目前除了我的主程式外,pydev 好像都有幫我編譯成 pyc, 所以我應該要手動下 python -m py_compile xxx.py 把我的主程式也編譯成 pyc 嗎? 我之前是有在程式裡寫 reload(sys) sys.setdefaultencoding('utf-8') 理論上這樣寫應該已經把環境轉成 utf-8了不是? ※ 編輯: eaden 來自: 122.116.190.212 (07/12 11:06)

07/12 12:31, , 4F
我用 GUI2Exe 打包,只能選 .py 不能選 .pyc 耶...
07/12 12:31, 4F
文章代碼(AID): #1HteQsI_ (Python)