在处理这个问题之前,你首先得知道为什么会出现这个这个问题。
你在使用VScode编辑代码时,代码页面中文正常,而终端输出那里中文却为乱码。
出现这个现象的原因是因为编码方式的不同。(VScode的默认编码方式为UTF-8,中国地区下cmd的编码方式GBK)
因为VScode终端那里调用的是cmd,两者编码方式的不同的就导致了中文乱码的问题。
所以我们解决乱码的方式,就是将两者的编码方式统一就行,要么将两者都统一为UTF-8,要么就统一为GBK。(个人建议统一为GBK)
上面讲了这么多,接下来我们就介绍一下如何快速设置VScode的编码方式为GBK吧。
一、首先打开《文件》-《首选项》-《设置》
步骤一
二、在《设置》中搜索《encoding》
搜索encoding
三、设置编码方式为GBK
设置为GBK编码
之后我们在VScode中新建的文件就会默认为GBK编码了,和cmd的默认编码方式一样。这样就能避免中文乱码的问题了。
但是还有一个问题,那就是我原本有个C文件,它不是GBK编码的,而是UTF-8编码的,这种情况下我们该怎么办呢?
有个简单直接的方法就是把这个文件全部转换为GBK的编码方式,当然这样会比较麻烦。
还有一个方法就是把我们的cmd编码方式临时设置成UTF-8就行。
在这里我提一个命令语句chcp,这个命令可以查看cmd的编码方式,还可以修改它的编码方式。
GBK2312代码页编号为936
UTF-8代码页编号为65001
输入chcp,查看当前cmd编码方式
我们可以直接输入chcp+对应的编码方式(例如修改为UTF-8时,输入chcp 65001即可),就可以修改cmd的编码方式为你指定的那种。不过这种方法只能临时修改。当你退出后重新登录,就会恢复之前的编码方式。
但是根据上述更改,仍未解决python中文输出乱码问题,下面方法完美解决:
- 添加系统全局变量PYTHONIOENCODING,值设置为UTF8
- 然后再重启VSCode就好了
变量名PYTHONIOENCODING
,值设置为UTF8