1. 程式人生 > >解決Visual Stdio Code python 輸出亂碼(中文亂碼和全部亂碼)

解決Visual Stdio Code python 輸出亂碼(中文亂碼和全部亂碼)

第一種情況
無論輸出什麼都是亂碼一堆,但是在切換到別的檔案輸出正常,在排除了程式碼錯誤,以及中文輸出(下面會說)的情況,那麼你只需要看看是不是你的檔名的關係,如果有空格則不行,別的字元還沒有嘗試。
執行環境:vscode版本:1.19.3
程式碼語言:python 3.6

第二種情況
在vscode裡用ctrl+shift+B直接輸出python執行結果時。

print('是中文嗎')

下面輸出欄中卻顯示的是亂碼,而在終端中執行則正常顯示中文。
查了很久,嘗試了很多辦法,改了很多設定。都沒用,在不換ide的前提下,終於找見了一種在vscode中能行的辦法。
在一個py檔案里加上以下內容

#一、如果vs code中輸出中文亂碼
# -*-coding:utf-8 -*-
import io
import sys
#改變標準輸出的預設編碼
sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')
print('中文嗎')

即可,如果每次都要寫一堆很麻煩,那麼就將其作為一個單獨的py檔案,再寫別的py檔案時,import進來就行了。
(別問我為什麼不用F5來除錯,因為我的vs會告訴我 除錯介面卡程序已意外終止