如何从 Sublime Text 2 运行 Python 代码?
- 2025-02-14 09:49:00
- admin 原创
- 49
问题描述:
我想在 Sublime Text 2 中设置一个完整的 Python IDE。
我想知道如何在编辑器中运行 Python 代码。是否可以使用构建系统完成?我该怎么做?
解决方案 1:
工具 -> 构建系统 -> (选择)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
解决方案 2:
编辑 %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 版本。
解决方案 3:
在 Mac OS X 上,使用 .py 扩展名保存文件。按⌘
+ B
。它会在下面的窗口中运行。
解决方案 4:
要运行,请按( matiitCtrl
`B`回答)
但是当Ctrl
`B` 不起作用时,Sublime Text 可能找不到 Python 解释器。尝试运行程序时,查看日志并在路径中找到对 Python 的引用。
[cmd: [u'python', u'-u', u'C:\\scripts\\test.py']]
[path: ...;C:Python27 32bit;...]
重点是它尝试通过命令行运行 python,cmd 如下所示:
python -u C:scripts est.py
如果你不能从 cmd 运行 python,那么 Sublime Text 也不能。
(在 cmd 中自己尝试一下,在其中输入 python 并运行它,应该会出现 python 命令行)
解决方案
您可以更改 Sublime Text 构建公式或系统%PATH%
。
要设置您的
%PATH%
:
*您需要重新启动编辑器才能加载新的%PATH%
+ 运行命令行*并输入此命令:**需要以管理员身份运行,*
`SETX /M PATH "%PATH%;<python_folder>"`
例如:`SETX /M PATH "%PATH%;C:Python27;C:Python27Scripts"`
+ **或**手动:(最好)在字符串末尾
添加。`;C:Python27;C:Python27Scripts`
要设置解释器的路径而不干扰系统,请参阅ppy
%PATH%
的这个答案。
解决方案 5:
如果使用 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"
}
解决方案 6:
[这适用于 ST3 (Win),不确定是否适用于 ST2]
要使输出在 Sublime 中显示为另一个文件 (+ 一个用于错误),请执行以下操作:
创建一个新的构建系统:
Tools > Build Systems > New Build System...
使用以下配置:
{
"cmd": ["python.exe", "$file", "1>", "$file_name.__STDOUT__.txt", "2>", "$file_name.__STDERR__.txt"],
“选择器”:“源.python”,
“shell”:真,
“工作目录”:“$file_dir”
}
对于您的 Python 文件,请选择上述构建系统配置文件:
Tools > Build Systems > {your_new_build_system_filename}
ctrl
+b
现在,在您的文件旁边,例如
"file.py"
您将拥有"file.__STDOUT__.py"
和"file.__STDERR__.py"
(如果有错误)如果你将窗口分成 3 列或一个网格,你将立即看到结果,而无需切换面板/窗口
解决方案 7:
在 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
并根据您的操作系统 按或其他。
解决方案 8:
很酷的你们,我刚刚发现了这个:
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 来启动我的应用程序了。这话说得真好笑,不是吗?非常感谢写这篇文章的人 ;-)
解决方案 9:
我解决了这个问题:
> 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'
解决方案 10:
我今天遇到了同样的问题。以下是我在 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",
}
当然,您可以进一步定制它以适合您的需求。
解决方案 11:
似乎 Ctrl+Break 对我来说不起作用,首选项 - 用户... 也不起作用。
使用键 Alt → t → c
解决方案 12:
Ctrl
您可以通过“查看/显示控制台”或+访问 Python 控制台`
。
解决方案 13:
我遇到了同样的问题。您可能尚未保存文件。请确保使用 .py 扩展名保存代码,这样它应该可以正常工作。
解决方案 14:
关于上述构建系统,有一点需要注意:您可以编写(并使用)自定义.sublime-build
文件,甚至可以按项目build_systems
子句编写(在您的项目设置中)。这允许您执行有用的操作,例如使用 ANSI 颜色输出的花哨测试运行器。
要获得更多“完整 IDE”功能,您可以使用优秀的SublimePythonIDE包:
代码完成(英特尔)
跳转到定义和对象描述
正确的 linting/pep8
使用 virtualenv 支持不同的解释器
披露:我为该软件包贡献了一个 PR,并且我一直在使用它,但还有 其他的 。
解决方案 15:
与 Sublime 一起使用真正的 Python 控制台
Sublime 的构建系统和 SublimeREPL(上面的答案)都受到限制,因为在运行文件后您无法轻松地与工作区变量进行交互。
如果您想运行脚本,然后以类似 REPL 的方式工作(就像在 IDE 中一样),那么我建议在 IPython 控制台旁边打开 Sublime。使用 AutoHotKey(Windows)或 AutoKey(Linux),您可以进行设置,以便单个快捷方式复制文件名(或仅复制选定的代码),然后将其粘贴到控制台中以运行该文件。
Linux或Windows的详细说明