SublimeText3按ctrl+b執(zhí)行python無反應(yīng)
作者: 鄭曉 分類: Python 發(fā)布于: 2016-08-17 12:17 瀏覽:51,686 評論(15)
最后更新時間:2017-09-14
現(xiàn)象:
在Sublime中打開.py文件,按”ctrl+b”執(zhí)行時無反應(yīng)。點擊工具->編譯系統(tǒng)中已經(jīng)有且識別到Python,但執(zhí)行”run(ctrl+shift+b)”時無反應(yīng),Sublime左下角提示”No Build System with variant run”。
解決:
首先打開一個CMD,在左上角單擊,選擇”屬性”。在屬性->選項中查看”當(dāng)前代碼頁”一項中的數(shù)值。(這一步可選)
然后打開Sublime安裝目錄,打開Packages,找到里面的”Python.sublime-package”文件,復(fù)制出來一份留作備份。把這個文件后綴改為.zip,打開這個壓縮包。
在打開壓縮包中找到”Python.sublime-build”文件拖出來編輯一下它(編輯工具可用sublime或其它文本編輯器直接打開)。
原文件內(nèi)容應(yīng)該類似這樣:
{
"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,成功執(zhí)行。
PS:不成功的原因可能是第一行cmd命令問題或encoding編碼不對(如果上述法不成功,嘗試將encoding的值改為第一步查看到的數(shù)值)或其它參數(shù)有問題比如我這里的variants也有問題,所以我就直接去掉了。。。。
======================2017-09-14 更新======================
另一方法:
菜單中點擊–> 工具 –> 編譯系統(tǒng) –> 新建編譯系統(tǒng)
把里面的默認(rèn)配置內(nèi)容刪除,改成下面這樣:
{
"cmd": ["python", "$file"],
"file_regex": "py$",
"selector": "source.python"
}
保存,命名為python.sublime-build即可,重命名時的這個python字符串,我覺得改成其它的也可以,它只是會顯示在你菜單編譯系統(tǒng)列表里而已。
關(guān)掉sublime重新打開測試,新建一個.py文件,寫一個helloworld, ctrl+b 成功。
本文采用知識共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進(jìn)行許可,轉(zhuǎn)載時請注明出處及相應(yīng)鏈接。
本文永久鏈接: http://yjfs.org.cn/sublimetext3-ctrlb-python-buildsystem.html
新建編譯系統(tǒng)后,在工具-編譯系統(tǒng)-選你剛命名的就行了