我想在优胜美地的 Sublime Text 3 中将首选编码从 US-ASCII 更改为 UTF-8。 bash 中的首选编码设置为 UTF-8,因此当在终端中运行 python 时:
import locale
print(locale.getpreferredencoding())
输出为:
UTF-8
在 Sublime Text 中运行相同的代码时,输出为 US-ASCII
.在 Python 3 的构建系统中设置:
"encoding": "UTF-8"
或者
"env": {"PYTHONIOENCODING": "utf-8}
没有帮助。
如何永久更改设置,以便我不必调用
locale.setlocale(locale.LC_ALL, 'en_US.UTF-8')
在脚本中作为修复。
最佳答案
在 ST3 的 Python 构建系统中,您可以指定它应该设置 LANG
环境变量,这将影响从 locale.getpreferredencoding()
返回的结果,因此您无需修改任何 Python 脚本。
例子:
"env": {"PYTHONIOENCODING": "utf-8", "LANG": "en_US.UTF-8"},
这已被证实适用于 Linux 以及 MacOS 和 Windows。
关于python-3.x - 如何在 MacOS 的 Sublime Text 3 中更改首选编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42101759/