SublimeText3按ctrl+b执行python无反应

现象:
在Sublime中打开.py文件,按”ctrl+b”执行时无反应。点击工具->编译系统中已经有且识别到Python,但执行”run(ctrl+shift+b)”时无反应,Sublime左下角提示”No Build System with variant run”。

解决:
首先打开一个CMD,在左上角单击,选择”属性”。在属性->选项中查看”当前代码页”一项中的数值。(这一步可选)
sublime-python-build-cmd
然后打开Sublime安装目录,打开Packages,找到里面的”Python.sublime-package”文件,复制出来一份留作备份。把这个文件后缀改为.zip,打开这个压缩包。

在打开压缩包中找到”Python.sublime-build”文件拖出来编辑一下它(编辑工具可用sublime或其它文本编辑器直接打开)。
原文件内容应该类似这样:

{
    "shell_cmd": "python -u "$file"",
    "file_regex": "^[ ]*File "(...*?)", line ([0-9]*)",
    "selector": "source.python",

    "env": {"PYTHONIOENCODING": "utf-8"},

    "variants":
    [
        {
            "name": "Syntax Check",
            "shell_cmd": "python -m py_compile "${file}"",
        }
    ]
}

改成这样:

{
    "cmd": ["python", "-u", "$file"],
    "file_regex": "^[ ]*File "(...*?)", line ([0-9]*)",
    "selector": "source.python",
    "encoding": "utf-8",
    "env": {"PYTHONIOENCODING": "utf-8"}
}

保存后拖回zip中覆盖,然后把.zip改回.sublime-package,覆盖回Packages目录即修改完成。

打开一个.py,敲一句print ‘hello world’, ctrl+b,成功执行。
windows-sublime-python-buildsystem

PS:不成功的原因可能是第一行cmd命令问题或encoding编码不对(如果上述法不成功,尝试将encoding的值改为第一步查看到的数值)或其它参数有问题比如我这里的variants也有问题,所以我就直接去掉了。。。。

======================2017-09-14 更新======================
另一方法:
菜单中点击–> 工具 –> 编译系统 –> 新建编译系统
把里面的默认配置内容删除,改成下面这样:


    "cmd": ["python", "$file"],
    "file_regex": "py$", 
    "selector": "source.python" 
}

保存,命名为python.sublime-build即可,重命名时的这个python字符串,我觉得改成其它的也可以,它只是会显示在你菜单编译系统列表里而已。
关掉sublime重新打开测试,新建一个.py文件,写一个helloworld, ctrl+b 成功。

posted @ 2017-10-23 17:48  Yi个人  阅读(3634)  评论(0编辑  收藏  举报