簡體   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