саш*_*аша 4 encoding utf-8 python-3.x sublimetext3 osx-yosemite
我想在优胜美地的Sublime Text 3中将首选编码从US-ASCII更改为UTF-8。bash中的首选编码设置为UTF-8,因此当在终端中运行python时:
import locale
print(locale.getpreferredencoding())
Run Code Online (Sandbox Code Playgroud)
输出为:UTF-8
在Sublime Text中运行相同的代码时,输出为US-ASCII
。
在Python的构建系统中设置3:
"encoding": "UTF-8"
Run Code Online (Sandbox Code Playgroud)
要么
"env": {"PYTHONIOENCODING": "utf-8}
Run Code Online (Sandbox Code Playgroud)
没有帮助。
如何永久更改设置,这样就不必调用locale.setlocale(locale.LC_ALL, 'en_US.UTF-8')
脚本来解决问题了。
在ST3的Python构建系统中,您可以指定它应该设置LANG
环境变量,这将影响从返回的结果locale.getpreferredencoding()
,因此您无需修改任何Python脚本。
例:
"env": {"PYTHONIOENCODING": "utf-8", "LANG": "en_US.UTF-8"},
Run Code Online (Sandbox Code Playgroud)
已经确认这可以在Linux以及MacOS和Windows上使用。
归档时间: |
|
查看次数: |
855 次 |
最近记录: |