![](/img/trans.png)
[英]Change python 3.7 default encoding from cp1252 to cp65001 aka UTF-8
[英]Change Windows 8 codepage in Python 3 Spyder console from cp1252 to utf-8
如何將Python 3 Spyder控制台中的Windows 8代碼頁從cp1252更改為utf-8?
代碼頁顯然是cp1252,如
import locale
locale.getpreferredencoding()
這意味着很難通過“ print”來打印非ASCII字符,因為會引發異常( UnicodeEncodeError
)。
一種可能的解決方案是使用.encode方法及其“錯誤”參數。
u'\x9d'.encode('cp1252', errors='replace')
但是為什么沒有一個(或在哪里)選項將控制台編碼更改為utf-8。 我期待“首選項”中有一個選項。
另一種解決方案是使用以下命令在Spyder外部執行python文件:
chcp 65001
c:\path_to_python\python.exe the_script.py
這可行,但是缺乏Spyder的集成性。
我試圖用
chcp 65001
c:\path_to_python\python.exe
並將其設置為“高級設置”中的“使用以下Python解釋器”,但是Spyder不允許這樣做-至少是我嘗試過的方式。
我也不能通過使用以下批處理腳本來使另一個變通辦法起作用:
chcp 65001
c\:path_to_spyder\Spyder.exe
( 此處為Spyder dev )此問題將在我們的下一個版本(即2.3.2版)中修復。 從該版本開始,對於Python 3和Python 2,控制台中的輸入和輸出都將被視為unicode。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.