我想在 Sublime Text 2 中设置一个完整的 Python IDE。
我想知道如何在编辑器中运行 Python 代码。它是使用构建系统完成的吗?我该怎么做 ?
我想在 Sublime Text 2 中设置一个完整的 Python IDE。
我想知道如何在编辑器中运行 Python 代码。它是使用构建系统完成的吗?我该怎么做 ?
工具 -> 构建系统 ->(选择)Python 然后:
跑步:
Tools -> Build
-or-
Ctrl + B
CMD + B (OSX)
这将在控制台中启动您的文件,该控制台应该位于编辑器的底部。
停止:
Ctrl + Break or Tools -> Cancel Build
Fn + C (OSX)
您可以在Break
这里找到您的密钥: http ://en.wikipedia.org/wiki/Break_key 。
注意:CTRL + C
不会工作。
Ctrl + Break
不工作时怎么办:
去:
首选项 -> 键绑定 - 用户
并粘贴以下行:
{"keys": ["ctrl+shift+c"], "command": "exec", "args": {"kill": true} }
现在,您可以使用ctrl+shift+c
而不是CTRL+BREAK
编辑 %APPDATA%\Sublime Text 2\Python\Python.sublime-build
将内容更改为:
{
"cmd": ["C:\\python27\\python.exe", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}
将“c:\python27”部分更改为系统中的任何 python 版本。
在 Mac OS X 上,使用 .py 扩展名保存文件。按⌘</kbd> + B. It runs in a window below.
运行按CtrlB(由matiit回答)
但是当CtrlB 不起作用时,Sublime Text 可能找不到 Python 解释器。尝试运行程序时,请查看日志并在路径中找到对 Python 的引用。
[cmd: [u'python', u'-u', u'C:\\scripts\\test.py']]
[path: ...;C:\Python27 32bit;...]
关键是它试图通过命令行运行 python,cmd 看起来像:
python -u C:\scripts\test.py
如果你不能从 cmd 运行 python,Sublime Text 也不能。
(在cmd中自己尝试,在里面输入python并运行,应该会出现python命令行)
您可以更改 Sublime Text 构建公式或 System %PATH%
。
设置你的%PATH%
:
*你需要重新启动你的编辑器来加载新的%PATH%
运行命令行*并输入以下命令:*需要以管理员
SETX /M PATH "%PATH%;<python_folder>"
身份运行,例如:SETX /M PATH "%PATH%;C:\Python27;C:\Python27\Scripts"
或手动:(首选)在字符串末尾
添加。;C:\Python27;C:\Python27\Scripts
要设置解释器的路径而不弄乱 System,请参阅ppy%PATH%
的这个答案。
您可以使用SublimeREPL(您需要先安装Package Control)。
如果使用 python 3.x 你需要编辑Python3.sublime-build
(首选项 > 浏览包 > Python 3)
看起来像这样:
{
"path": "/usr/local/bin",
"cmd": ["python3", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}
[这适用于ST3(Win),不确定ST2]
要将输出作为另一个文件在 Sublime 中可见(+ 一个表示错误),请执行以下操作:
Tools > Build Systems > New Build System...
{ "cmd": ["python.exe", "$file", "1>", "$file_name.__STDOUT__.txt", "2>", "$file_name.__STDERR__.txt"], “选择器”:“source.python”, “壳”:是的, “工作目录”:“$file_dir” }
Tools > Build Systems > {your_new_build_system_filename}
"file.py"
您将拥有"file.__STDOUT__.py"
and "file.__STDERR__.py"
(对于错误,如果有的话)在 python v3.x 中,您应该转到 : Tools->Build System->New Build System
。
然后,它会在 sublime 文本编辑器中弹出 untitled.sublime-build 窗口。输入设置为:
{
"cmd": ["path_to_the_python.exe","-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}
要查看路径,Type following in terminal as
:
python
>>> import sys
>>>print(sys.executable)
您可以制作多个构建系统,但它应该默认保存在带有.sublime-build扩展名的 Sublime 文本包中。
然后,选择新的构建系统cltr+b
并根据您的操作系统 按或其他。
酷你们,我刚刚发现了这个:
http://ptomato.wordpress.com/2012/02/09/geek-tip-running-python-guis-in-sublime-text-2/
它解释了(就像上面的答案之一)如何在默认目录中编辑这个exec.py 。
我遇到的问题是我的PYTHON UI APPLICATION无法启动。我从以下片段中注释掉了最后一行:
# Hide the console window on Windows
startupinfo = None
if os.name == "nt":
startupinfo = subprocess.STARTUPINFO()
#startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
而且,taaadaaaa,我可以通过按 Ctrl+B 来启动我的应用程序。反正有趣的台词,嗯?非常感谢写那篇文章的人;-)
我解决了这个问题:
> Preferences –> Browse Packages –> Default
打开exec.py
文件,在第 41-42 行附近,代码应如下所示:
for k, v in proc_env.iteritems():
proc_env[k] = os.path.expandvars(v).encode(sys.getfilesystemencoding())
然后将其删除或编辑为:
try:
for k, v in proc_env.iteritems():
proc_env[k] = os.path.expandvars(v).encode(sys.getfilesystemencoding())
except:
print 'foobar'
似乎 Ctrl+Break 对我不起作用,Preference - User ...
使用键,Alt → t → c
我今天遇到了同样的问题。以下是我如何在 Sublime Text 3 中运行 python 代码:
您接下来需要做的是将内容替换Python.sublime-build
为
{
"cmd": ["/usr/local/bin/python", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
}
您当然可以进一步将其自定义为适合您的东西。
您可以通过“查看/显示控制台”或Ctrl+访问 Python 控制台`。
我有同样的问题。您可能还没有保存文件。确保使用 .py 扩展名保存您的代码,它应该可以工作。
关于上述构建系统需要注意的一件事:您可以编写(和使用)自定义.sublime-build
文件甚至每个项目build_systems
子句(在您的项目设置中)。这允许您做一些有用的事情,例如带有 ANSI 颜色输出的精美测试运行器。
对于更多“完整的 IDE”功能,您可以使用出色的SublimePythonIDE包:
在 Sublime 旁边使用真正的 python 控制台
Sublime 的构建系统和 SublimeREPL(上面的答案)都受到限制,因为您在运行文件后无法轻松地与工作区变量进行交互。
如果你想运行一个脚本,然后以类似 REPL 的方式工作(就像你在 IDE 中那样),那么我建议在 IPython 控制台旁边打开 Sublime。使用 AutoHotKey (Windows) 或 AutoKey (Linux),您可以将其设置为单个快捷方式将复制文件名(或仅复制所选代码),然后将其粘贴到控制台中以运行文件。