sublime执行python含有中文代码结果报错UnicodeEncodeError

本文介绍如何在Sublime Text中配置环境变量以解决执行含有中文字符的Python代码时出现的UnicodeEncodeError错误。通过修改Python.sublime-build文件加入特定的环境变量,可以有效解决该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

sublime执行python含有中文代码结果报错,报错如下

Traceback (most recent call last):

  File "/Users/stacywongs/Downloads/python/demo.py", line 2, in <module>
    print('\u8f93\u5165\u540d\u79f0')
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-3: ordinal not in range(128)
[Finished in 0.0s with exit code 1]

查了几个结果都说在Python.sublime-build加一行

"encoding": "utf-8",  在我mac环境下并未能起作用,执行后还是报错,

查到如下解决方式

"env": {"LANG": "en_US.UTF-8"} 这句话是关键

{
"cmd": ["python", "-u", "$file"],
"path":"/anaconda3/bin",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", 
"selector": "source.python",
"encoding": "utf-8",
"env": {"LANG": "en_US.UTF-8"}
}

--------------------------------引用如下-------------------------------

https://segmentfault.com/q/1010000000398574

http://stackoverflow.com/a/15174760

Preferences -> Browse Packages -> Python -> Python.sublime-build

加上一句 env,比如这样:

{
    "cmd": ["/usr/local/bin/python3.3", "-u", "$file"],
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python",
    "env": {"LANG": "en_US.UTF-8"}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值