我想在Sublime Text 2中设置一个完整的Python IDE。
我想知道如何从编辑器中运行Python代码。是用构建系统完成的吗?我该怎么做?
我想在Sublime Text 2中设置一个完整的Python IDE。
我想知道如何从编辑器中运行Python代码。是用构建系统完成的吗?我该怎么做?
当前回答
很酷的朋友们,我刚刚发现了这个:
http://ptomato.wordpress.com/2012/02/09/geek-tip-running-python-guis-in-sublime-text-2/
它解释了(类似于上面的答案之一)如何在默认目录中编辑这个exec.py。
我有一个问题,我的PYTHON UI应用程序不会启动。我从下面剪掉了最后一行:
# Hide the console window on Windows
startupinfo = None
if os.name == "nt":
startupinfo = subprocess.STARTUPINFO()
#startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
然后,我可以通过按Ctrl+B启动我的应用程序。这句话很有趣,嗯?非常感谢写这篇文章的人;-)
其他回答
编辑%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。
我今天也遇到了同样的问题。下面是我在Sublime Text 3中运行python代码的方法:
按Ctrl + B (Mac,⌘+ B)开始构建系统。它现在应该执行文件了。 按照这个答案来理解如何自定义构建系统。
接下来需要做的是替换Python中的内容。sublime-build来
{
"cmd": ["/usr/local/bin/python", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
}
当然,您可以进一步定制它,使之适合您。
关于前面提到的构建系统,有一点需要注意:您可以编写(并使用)自定义的.sublime-build文件,甚至每个项目的build_systems子句(在您的项目设置中)。这允许您做一些有用的事情,比如带有ANSI颜色输出的花哨测试运行器。
对于更多“完整的IDE”特性,你可以使用出色的SublimePythonIDE包:
代码完成(intel) 跳转到定义和对象描述 适当的产品毛羽/ pep8 使用virtualenv支持不同的解释器
披露:我为这个包贡献了一个PR,我一直在使用它,但还有其他的。
在Sublime旁边使用一个真正的python控制台
Sublime的构建系统和升华epl(上面的答案)都是有限的,因为在运行文件后,您不能轻松地与工作区变量交互。
如果你想运行一个脚本,然后以类似repr的方式工作(就像你在IDE中那样),那么我建议在IPython控制台旁边打开Sublime。使用AutoHotKey (Windows)或AutoKey (Linux),您可以设置这样一个单一的快捷方式将复制文件名(或只是所选的代码),然后将其粘贴到控制台中以运行文件。
Linux或Windows的详细说明
[这适用于ST3 (Win), ST2不确定]
要让Sublime中的输出作为另一个文件可见(错误为+ 1),请执行以下操作:
创建一个新的构建系统:Tools > build Systems > new build system… 使用以下配置:
{ "cmd": ["python.exe", "$file", "1>", "$file_name.__STDOUT__.txt", "2>", "$file_name.__STDERR__.txt"], "selector": "source.python", "shell": true, "working_dir": "$file_dir" }
对于你的Python文件,选择上面的构建系统配置文件:Tools > build Systems > {your_new_build_system_filename} CTRL + b 现在,在你的文件旁边。"file.py"你会有"file.__STDOUT__.py"和"file.__STDERR__.py"(如果有错误的话) 如果你把你的窗口分成3列,或一个网格,你会立即看到结果,而不需要切换面板/窗口