繁体   English   中英

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

[英]How do I run Python code from Sublime Text 2?

我想在 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

在 Mac OS X 上,使用 .py 扩展名保存文件。 + 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。

要运行,请Ctrl B (由matiit回答)

但是当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\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\\ScriptsWin7设置路径

  • 要设置解释器的路径而不与 System %PATH%混淆,请参阅ppy 的此答案。

您可以使用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 中的输出作为另一个文件(+ 一个错误)可见,请执行以下操作:

  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. ctrl + b
  3. 现在,在您的文件旁边,例如"file.py"您将拥有"file.__STDOUT__.py""file.__STDERR__.py" (对于错误,如果有的话)
  4. 如果您将窗口拆分为 3 列或网格,您将立即看到结果,无需切换面板/窗口

在 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 应用程序无法启动的问题。 我从以下片段中注释掉了最后一行:

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

我今天遇到了同样的问题。 这是我如何在 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",
}

您当然可以进一步将其自定义为适合您的内容。

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

使用快捷键 Alt → t → c

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

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

对于更多“完整的 IDE”功能,您可以使用优秀的SublimePythonIDE包:

  • 代码完成(英特尔)
  • 跳转到定义和对象描述
  • 适当的掉毛/pep8
  • 使用 virtualenv 支持不同的解释器

披露:我已经贡献了PR该程序包,我用它所有的时间,但其他人

与 Sublime 一起使用真正的 python 控制台

Sublime 的构建系统和 SublimeREPL(上面的答案)都受到限制,因为您在运行文件后无法轻松与工作区变量进行交互。

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

LinuxWindows 的详细说明

您可以通过“查看/显示控制台”或Ctrl + `访问 Python 控制台。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM