【发布时间】:2023-03-17 14:15:01
【问题描述】:
我使用 python 库将 Unicode 字符打印到 Windows 控制台。如果我在库上调用一个打印出 Unicode 字符的函数,它将抛出异常 'charmap' codec can't encode characters。
这就是我试图解决该错误的方法:
在调用库函数之前,使用 os.system("chcp 65001") 从 python 调用“chcp 65001”Windows 控制台命令。
我知道有类似的问题,这就是我尝试上述解决方案的原因。它成功调用控制台上的命令并告诉我它激活了代码页。
但是,异常再次出现。如果我尝试在不关闭前一个控制台的情况下再次运行程序,则程序将成功执行,没有任何异常。这意味着上面的控制台命令在第一次尝试后生效。
我的问题是:有没有办法通过预先激活 Unicode 支持来启动 Windows 控制台,这样我就不必调用该程序两次。
【问题讨论】:
-
chcp无法解决此问题,请使用此处列出的解决方案:Python, Unicode, and the Windows console
标签: python windows python-3.x unicode console