print(sys.stdout.encoding, locale.getpreferredencoding ())

windows console : chcp 65001;

在设置了这个环境变量时

通过

set PYTHONIOENCODING=utf-8

或(PowerShell 下)

$env:PYTHONIOENCODING = "utf-8"

PYTHONIOENCODING 指定的编码方式会覆盖原来的 sys.stdout.encoding 。如果将 PYTHONIOENCODING 设置为 utf-8,那么 Python 在输出 Unicode 字符串的时候就会以 UTF-8 输出,相当于什么也不转换。

05-02 10:14