Bootstrap

日常工作笔记: python3 windows命令行 print中文报错

        由于工作需要,近期在写python。在测试py文件时,发现了一个问题: 在cmd窗口打印中文会报错。使用try catch也捕获不到异常,十分烦恼!

print('中文')

        网上搜索了各类解决方案,有在代码文件头加编码格式的:

# -*- coding: utf-8 -*-

有修改stdout编码格式的:

sys.stdout = io.TextIOWrapper(sys.stdout.buffer, 'utf-8')

有说cmd的默认代码也是936,需要切换到65001的:

chcp 65001

以上方法统统测试了一遍,全部都无效。最后万般无奈之下,恢复了cmd的默认代码页,也就是936,竟然奇迹般的可以打印中文。真的是“踏破铁鞋无觅处,那人却在灯火阑珊处”啊。

      在此记录一下,避免自己再次采坑。也愿做那“星星之火”,帮助仍在探索中的coding们。

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;