在处理这个问题之前,你首先得知道为什么会出现这个这个问题。

你在使用VScode编辑代码时,代码页面中文正常,而终端输出那里中文却为乱码。

出现这个现象的原因是因为编码方式的不同。(VScode的默认编码方式为UTF-8,中国地区下cmd的编码方式GBK)

因为VScode终端那里调用的是cmd,两者编码方式的不同的就导致了中文乱码的问题。

所以我们解决乱码的方式,就是将两者的编码方式统一就行,要么将两者都统一为UTF-8,要么就统一为GBK。(个人建议统一为GBK)



上面讲了这么多,接下来我们就介绍一下如何快速设置VScode的编码方式为GBK吧。

一、首先打开《文件》-《首选项》-《设置》

pythongbk编码 python gbk code_python

步骤一

二、在《设置》中搜索《encoding》

pythongbk编码 python gbk code_中文乱码_02

搜索encoding

三、设置编码方式为GBK

pythongbk编码 python gbk code_python_03

设置为GBK编码

之后我们在VScode中新建的文件就会默认为GBK编码了,和cmd的默认编码方式一样。这样就能避免中文乱码的问题了。




但是还有一个问题,那就是我原本有个C文件,它不是GBK编码的,而是UTF-8编码的,这种情况下我们该怎么办呢?

有个简单直接的方法就是把这个文件全部转换为GBK的编码方式,当然这样会比较麻烦。

还有一个方法就是把我们的cmd编码方式临时设置成UTF-8就行。

在这里我提一个命令语句chcp,这个命令可以查看cmd的编码方式,还可以修改它的编码方式。

GBK2312代码页编号为936

UTF-8代码页编号为65001

pythongbk编码 python gbk code_中文乱码_04

输入chcp,查看当前cmd编码方式

我们可以直接输入chcp+对应的编码方式(例如修改为UTF-8时,输入chcp 65001即可),就可以修改cmd的编码方式为你指定的那种。不过这种方法只能临时修改。当你退出后重新登录,就会恢复之前的编码方式。

但是根据上述更改,仍未解决python中文输出乱码问题,下面方法完美解决:

  1. 添加系统全局变量PYTHONIOENCODING,值设置为UTF8
  2. 然后再重启VSCode就好了

变量名PYTHONIOENCODING,值设置为UTF8