首页 > 解决方案 > python os.system("chcp 65001") 不起作用

问题描述

在 python 中执行打印语句时,Windows cmd 不能很好地处理 utf8。
很多人说我们可以在cmd中执行python脚本之前输入“chcp 65001”。在我们的情况下,我们想在 Windows 中实现一个带有桌面图标的应用程序(在 python pyc 中)。
因此,我们的第一个解决方案是在 main 函数之前将 os.system("chcp 65001") 添加到源 python 脚本中。
但不知何故,这不起作用。然后有人说尝试 os.system("/k chcp 65001")。
但这也不起作用。

我们的第二个解决方案是使用包含两行的 bat 文件,第一行是“chcp 65001”,第二行是“python my.pyc”,其中 my.pyc 是我们应用程序的主程序。但是这个解决方案似乎不一致,因为在某些环境中它失败了,而在其他环境中它没有失败。此外,通过这个解决方案,Windows 不允许我们更改 bat 文件的徽标(或图标图像)。

有人可以用 python 脚本用 cmd 和 utf8 帮助我们解决这个问题吗?

标签: pythonwindowscmdutf-8character-encoding

解决方案


推荐阅读