一个使用sublime 编译 python的问题

2012-08-17 13:14:25 +08:00
 koala
sublime的控制台在编译python无法显示中文啊~~怎么解决啊啊啊啊~
提示:[Decode error - output not utf-8]
14083 次点击
所在节点    程序员
9 条回复
banxi1988
2012-08-17 17:21:49 +08:00
建议代码文件使用utf-8编码,python代码中头部也写上#-*- coding:utf-8 -*-
shiweifu
2012-08-17 19:40:17 +08:00
编译 -> 编辑
yetone
2012-08-19 04:05:27 +08:00
@shiweifu .py 编译成 .pyc
pirates
2012-08-19 10:07:11 +08:00
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-08-27 16:57:16 +08:00
谢谢上面几位朋友的回复,我是这样解决的。
在插件的文件夹下找到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-08-27 20:56:14 +08:00
@koala 这样确实可以, 但是只是windows而已
这个错误的原因是: python解释器的输出是cp936的编码, 而sublime默认是utf-8, 所以有这个错误了
mozlingyu
2012-10-27 21:01:32 +08:00
领教。。谢
dingyaguang117
2012-10-29 09:57:01 +08:00
sublime 还是不太适合写python的
感觉还是前端用比较合适
dingyaguang117
2012-10-29 10:00:11 +08:00
import sys
reload(sys)
sys.setdefaultencoding('utf-8')

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

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

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

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

© 2021 V2EX