python3在windows下的編碼問題

做小例子時 從github上面扒一些字節流下來 系統爲windows10 從powershell下輸出 pirint函數竟然直接扔了個異常出來:

UnicodeEncodeError: 'gbk' codec can't encode character '\u2122' in position 31: illegal multibyte sequence

更改了標準輸出的默認編碼之後不出異常了

import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')


但是輸出中文亂碼 估計是控制檯的問題 再次更改:

sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='gb18030')


這次正確打印  兩個問號
發佈了49 篇原創文章 · 獲贊 5 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章