vscode 控制台 python 输出中文乱码问题(windows 系统)

这几天一直在这个python windows 中文乱码作斗争,心力交瘁……

我的vscode版本: 1.37.1,python 2.7

在文件位置使用 Git bash here,执行文件没有问题

但是到了vscode中,同样是使用 git bash 却输出乱码,在cmd中也一样。

接着我测试了在python 命令行和git bash中,输出中文,显示却又是正常的:

所以我就在想,有没有可能是python 读取执行文件的时候,window用 gbk 的编码格式拿给python执行,那python当然是拿到什么执行什么咯,所以才会出现上面的问题。

于是去网上找解决方案:

方案一:

使用cmd,修改cmd的字符设置为utf8

chcp 65001

但是:另外开一个cmd就失效了,每次使用cmd都要设置,太麻烦

方案二:

在vscode 的 “文件”--“首选项”--“设置”, 然后在setting.json中修改设置,添加一行:

"terminal.integrated.shellArgs.windows": ["/K chcp 65001 >nul"]

cmd生效了,每次打开都会自动设置,输出也正常了。

但是:我设置的另一个git bash 每次启动都会报错启动失败。

方案三:

在输出的字符串后加入解码和编码:

print 'hello python!我是中文我是中文'.decode('utf-8').encode('cp936')

这种也是唯一 一种我在vscode 里使用 git bash 不会报乱码的办法。

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

尝试过的无效的设置:

1、在vscode settings.json 中,加入一行:

"files.autoguessEncoding":true

2、设置git config

git config --global i18n.commitencoding utf-8

git config --global i18n.logoutputencoding utf-8

export LESSCHARSET=utf-8

3、在中文字符串前加一个u

print u"hello python!我是中文我是中文"

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

因为权限和系统的原因,未做测试的方案:

1、修改 git config 配置:

GIT中文乱码问题解决方案

2、win10配置系统默认utf-8编码 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值