首頁 >後端開發 >Python教學 >如何在 Python 腳本的 Sublime Text 中處理使用者輸入?

如何在 Python 腳本的 Sublime Text 中處理使用者輸入?

Barbara Streisand
Barbara Streisand原創
2024-12-06 19:15:12964瀏覽

How Can I Handle User Input in Sublime Text for Python Scripts?

解決Sublime Text 中的輸入處理挑戰

Sublime Text 廣泛用於程式碼編輯,但它缺乏透過raw_input() 等函式處理使用者輸入的原生能力在Python中。對於那些依賴腳本中的輸入的人來說,此限制可能會令人沮喪。

使用 SublimeREPL 進行輸入處理

一個解決方案是透過 Package Control 安裝 SublimeREPL 套件。該套件允許您將程式碼片段發送到正在運行的 REPL(讀取-評估-列印循環),從而有效地啟用輸入處理。但是,它可能需要手動調整建置檔案以確保相容性。

為輸入建立自訂建置系統

如果 SublimeREPL 無法滿足您的需求,您可以建立自己的自訂建置允許輸入的系統。操作方法如下:

對於 Windows:

{
    "cmd": ["start", "cmd", "/k", "c:/python38/python.exe", "$file"],
    "selector": "source.python",
    "shell": true,
    "working_dir": "$file_dir",
    "env": {"PYTHONIOENCODING": "utf-8"}
}

對於macOS:

{
    "shell_cmd": "osascript -e 'tell app \"Terminal\" to do script \"cd $file_path & python3 -u $file\"'",
    "working_dir": "$file_path",
    "selector": "source.python",
    "env": {"PYTHONIOENCODING": "utf-8"}
}

對於Linux:

{
    "shell_cmd": "gnome-terminal --working-directory=$file_path -- bash -c 'python3 -u \"$file\" & read -n 1 -s -r'",
    "working_dir": "$file_path",
    "selector": "source.python",
    "env": {"PYTHONIOENCODING": "utf-8"}
}

將這些建置系統儲存為Sublime Text Packages/User 目錄中的.sublime-build文件。

使用 Terminus 外掛程式進行輸入處理

另一個選擇是使用 Terminus 外掛程式。它為預設構建系統引擎提供了獨立於平台的替代。借助 Terminus,您可以在程式碼下方的建置面板中與正在執行的程式進行互動。以下是 Python 的範例建置系統:

{
    "target": "terminus_exec",
    "cancel": "terminus_cancel_build",
    "cmd": [
        "/path/to/python", "-u", "$file"
    ],
    "working_dir": "$file_path",
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)&\"",
}

記得調整 Python 執行檔的路徑。

透過採用這些解決方案,您可以克服 Sublime Text 的輸入處理限制並增強您的腳本建置經驗。

以上是如何在 Python 腳本的 Sublime Text 中處理使用者輸入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn