python在windows命令行下生成文件乱码问题,如何解决?

编辑一个文件test.py,编码默认是utf-8,代码如下:

print("你好")

命令行下输入:python test.py,显示结果为:你好。
但是当我输入命令:python test.py > test2.py 把输出结果保存到文件,使用编辑器打开test2.py文件是乱码:
图片描述

在命令行输入type test2.py显示是正常的:图片描述

大概直达问题是出在cmd的编码为gbk上,但该怎么解决这个问题?使用:chcp 65001,好像不能解决问题。
谢谢!

阅读 7.4k
5 个回答

用 git-bash 搜索下载一个好了

CMD默认是gbk的,所以如果输出字符串正常,那么输出的应该就是GBK字符,先修改文件编码,并且在python文件头部标明该文件的编码,然后写入文件就正常了

这样修改test.py,请把编码改为gbk:

# -*- coding: gbk -*- 
print('你好')

出现乱码只是和你的文本编辑器的编码有关系,你用的是 Atom 。 在右下角有个 UTF-8 ,单击然后选择 Chinese(GBK)图片描述

修改cmd默认的文件编码

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题