簡體   English   中英

將Python 3 Spyder控制台中的Windows 8代碼頁從cp1252更改為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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM