700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Python3输出中文乱码问题解决方案(原因是print函数编码默认为cp936 GBK编码)

Python3输出中文乱码问题解决方案(原因是print函数编码默认为cp936 GBK编码)

时间:2022-06-15 02:59:50

相关推荐

Python3输出中文乱码问题解决方案(原因是print函数编码默认为cp936 GBK编码)

遇到一个乱码问题,编码格式也都是UTF-8,原来是print函数的编码问题。找了很久,特此记录

因为你的文件声明为utf-8,并且也应该是用utf-8的编码保存的源文件。但是windows的本地默认编码是cp936,也就是gbk编码,所以在控制台直接打印utf-8的字符串当然是乱码了。

解决方案:

sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')后面再print中文就不会乱码了或者'中文'.encode('utf-8').decode(sys.stdout.encoding)

import ioimport sys#sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')type = sys.stdout.encodingprint(type)print('你好'.encode('utf-8').decode(type))

admin@DESKTOP-BL4NHA2 MINGW64 /f/data/python_demo$ python hello.pycp936你好

不知道怎么改Python系统文件,从而一劳永逸,欢迎大神指正……

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。