如何从Sublime Text 2运行Python代码?

我想在Sublime Text 2中设置一个完整的Python IDE。

我想知道如何从编辑器中运行Python代码。是用构建系统完成的吗?我该怎么做?

584143 次浏览

你可以通过“View/Show console”或Ctrl+访问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。

我也有同样的问题。您可能还没有保存文件。确保以.py扩展名保存代码,它应该可以工作。

你可以使用SublimeREPL(你需要先安装计划控制)。

我解决了这个问题:

> 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'

运行 press CtrlB(通过matiit回答)

但是当CtrlB 不起作用时,Sublime Text可能找不到Python解释器。在尝试运行程序时,请查看日志并在path中找到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% < / p >

    • 执行命令行*,输入命令:*需要以管理员身份运行
      SETX /M PATH "%PATH%;<python_folder>"
      例如:SETX /M PATH "%PATH%;C:\Python27;C:\Python27\Scripts"

    • 手动:(优选)
      在字符串的末尾添加;C:\Python27;C:\Python27\ScriptsSetting Path in Win7

      .
  • 要在不干扰系统%PATH%的情况下设置解释器的路径,请参阅ppy的回答。

在Mac OS X上,以.py扩展名保存文件。按 + B。它在下面的窗口中运行。

enter image description here

很酷的朋友们,我刚刚发现了这个:

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启动我的应用程序。这句话很有趣,嗯?给写这篇文章的人一个大大的谢谢你!;-)

如果使用python 3。你需要编辑Python3.sublime-build . x

(首选项>浏览包> Python 3)

看起来像这样:

{
"path": "/usr/local/bin",
"cmd": ["python3", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}

关于前面提到的构建系统有一点需要注意:你可以编写(并使用)自定义.sublime-build文件,甚至每个项目的build_systems子句(在你的项目设置中)。这允许你做一些有用的事情,比如一个花哨的测试运行程序与ANSI颜色输出

对于更多“完整的IDE”特性,你可以使用优秀的SublimePythonIDE包:

  • 代码完成(intel)
  • 跳转到定义&对象描述
  • 适当的产品毛羽/ pep8
  • 使用virtualenv支持不同的解释器

披露:我已经为这个包贡献了一个PR,并且我一直在使用它,但是在那里 其他人

[这适用于ST3 (Win), ST2不确定]

要让Sublime中的输出作为另一个文件可见(错误为+ 1),请执行以下操作:

  1. 创建一个新的构建系统:Tools > Build Systems > New Build System...
  2. 使用以下配置:


{
"cmd": ["python.exe", "$file", "1>", "$file_name.__STDOUT__.txt", "2>", "$file_name.__STDERR__.txt"],
"selector": "source.python",
"shell": true,
"working_dir": "$file_dir"
}
  1. 对于你的Python文件,选择上面的构建系统配置文件:Tools > Build Systems > {your_new_build_system_filename}
  2. __abc0 + __abc1
  3. 现在,在你的文件旁边,例如"file.py",你会有"file.__STDOUT__.py""file.__STDERR__.py"(如果有错误的话)
  4. 如果你把你的窗口分成3列,或一个网格,你会立即看到结果,而不需要切换面板/窗口

我今天也遇到了同样的问题。下面是我在Sublime Text 3中运行python代码的方法:

  1. Ctrl + B (Mac, + B)开始构建系统。它现在应该执行文件了。
  2. 遵循这个答案来了解如何自定义构建系统。

接下来你需要做的是将Python.sublime-build中的内容替换为

{
"cmd": ["/usr/local/bin/python", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
}

当然,您可以进一步定制它,使之适合您。

在python v3中。x你应该去Tools->Build System->New Build System

然后,它弹出标题。sublime文本编辑器中的sublime-build窗口。输入setting如下:

{


"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文本包中,扩展名为.sublime-build

然后,选择新的构建系统并根据您的操作系统按cltr+b或其他。

在Sublime旁边使用一个真正的python控制台

Sublime的构建系统和升华epl(上面的答案)都是有限的,因为在运行文件后,您不能轻松地与工作区变量交互。

如果你想运行一个脚本,然后以类似repr的方式工作(就像你在IDE中那样),那么我建议在IPython控制台旁边打开Sublime。使用AutoHotKey (Windows)或AutoKey (Linux),您可以设置这样一个单一的快捷方式将复制文件名(或只是所选的代码),然后将其粘贴到控制台中以运行文件。

Linux窗户的详细说明

似乎Ctrl+Break对我不起作用,首选项-用户…

使用键,Alt→t→c