一个使用sublime 编译 python的问题

2012 年 8 月 17 日
 koala
sublime的控制台在编译python无法显示中文啊~~怎么解决啊啊啊啊~
提示:[Decode error - output not utf-8]
14975 次点击
所在节点    程序员
9 条回复
banxi1988
2012 年 8 月 17 日
建议代码文件使用utf-8编码,python代码中头部也写上#-*- coding:utf-8 -*-
shiweifu
2012 年 8 月 17 日
编译 -> 编辑
yetone
2012 年 8 月 19 日
@shiweifu .py 编译成 .pyc
pirates
2012 年 8 月 19 日
exec.py里面替换
proc_env[k] = os.path.expandvars(v).encode(sys.getfilesystemencoding())

proc_env[k] = os.path.expandvars(v.decode(sys.getfilesystemencoding())).encode(sys.getfilesystemencoding())
koala
2012 年 8 月 27 日
谢谢上面几位朋友的回复,我是这样解决的。
在插件的文件夹下找到python文件夹,进去、修改Python.sublime-build文件。
{
"cmd": ["python", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
"encoding": "cp936"
}
然后设置成上面。cp936的由来是通过运行cmd,输入:chcp。控制台会输出: 活动代码页:936
所以设置编码规格为cp936。我试过,不管在哪里设置成utf-8都是不行的。
通过这样的操作,sublime的python控制台终于可以输出中文了。
davidx
2012 年 8 月 27 日
@koala 这样确实可以, 但是只是windows而已
这个错误的原因是: python解释器的输出是cp936的编码, 而sublime默认是utf-8, 所以有这个错误了
mozlingyu
2012 年 10 月 27 日
领教。。谢
dingyaguang117
2012 年 10 月 29 日
sublime 还是不太适合写python的
感觉还是前端用比较合适
dingyaguang117
2012 年 10 月 29 日
import sys
reload(sys)
sys.setdefaultencoding('utf-8')

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/45391

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX