
我希望透過點擊圖示在視窗中執行 python 程式。
這是自學編碼類型和 Ubuntu 的第一天,因此過度解釋和額外的細節值得讚賞。
我正在使用的程式碼範例
print("Game Over")
input("\n\nPress the enter key to exit")
在 IDLE 中運行正常,但是當我單擊 .py 檔案圖示時,它會打開編輯器而不是程式/窗口
到目前為止我已完成的步驟
- 右鍵單擊 .py 檔案並將權限設定為“允許將檔案作為程式執行”
- 盡可能多地閱讀,它似乎在向我指出超出我頭腦的信息。
例子
#!/usr/local/bin/python
#!/usr/bin/env python
CHMOD X
我都不理解或不知道在哪裡使用。
我正在使用 Ubuntu 14.04 和 Python 3
先感謝您。
答案1
儘管您的問題可能因多個原因而處於邊緣(太寬泛、偏離主題、每個問題有多個主題、處於許多幾乎重複的邊緣),但我會回答這些問題。
第一個問題:關於「從圖示」運行(純文字)腳本,正如您所提到的:
您的腳本是純文字的,需要在
Idle
終端機視窗中執行。這意味著如果您想透過雙擊圖標來運行它,您需要建立一個.desktop
文件,其中是定義的在終端機視窗中運行腳本。順便說一句,
這些.desktop
檔案實際上是 Ubuntu 上安裝的所有 GUI 應用程式的一部分。一個非常基本的範例,適合您的腳本:
[Desktop Entry] Name=Test Exec=/home/jacob/Bureaublad/test.py Terminal=true Type=Application
最有趣的幾行是:
Exec=/home/jacob/Bureaublad/test.py
其中定義了運行腳本的命令。
閱讀有關如何創建命令、腳本是否可執行、使用 shebang、語言擴展的更多信息,請參閱這裡。和行:
Terminal=true
這就是說該腳本需要在終端機視窗中運行。
您可以
.desktop
使用 ao 圖標和更多選項來擴展文件,具體取決於您的特定用途,請參閱這裡。如何使用該
.desktop
文件- 將上面的程式碼貼到一個空文件中,另存為
test.desktop
.Exec=/home/jacob/Bureaublad/test.py
根據我添加的連結編輯該行中的命令以建立運行腳本的命令。 如果您從桌面使用該文件,請使用以下命令使其可執行:
chmod +x /path/to/Test.desktop
或者,您可以複製(移動)檔案
.desktop
以~/.local/share/applications
使其在 Dash 中可用。全域安裝的應用程式將其.desktop
檔案儲存在/usr/share/applications
.在最後兩個目錄中,不需要使.desktop
檔案可執行。- 將上面的程式碼貼到一個空文件中,另存為
關於你不明白的範例行
線路:
#!/usr/local/bin/python #!/usr/bin/env python
是她怦然心動;腳本的第一行,告訴 shell 如果腳本可執行,則如何執行它,並且您在執行它
python
之前不需要腳本的路徑。由於您使用python3
,腳本中的 shebang 通常應為:#!/usr/bin/env python3
更多關於這一點,以及上面連結中的 shebang 和 command 之間的關係。
CHMOD X (?)
chmod +x
可能就是你的意思。如上所述,您可以使用以下命令使檔案可執行:chmod +x /path/to/file
答案2
正如其他人所提到的, chmod +x 是使程式可執行所必需的。例如,對於程式 hello.py,您可以在終端機中輸入:
$ chmod +x 你好.py
現在,不知道以前的版本是否如此,但在 Ubuntu 16.04 LTS 中,有必要將圖示的行為設定為允許點擊圖示來執行程式。您可以透過以下方式執行此操作:
轉到檔案瀏覽器窗口,然後將滑鼠遊標移到螢幕頂部並選擇編輯 > 首選項 > 行為,然後選擇“打開可執行文字檔案時運行”或“每次詢問”。
另外,為了防止終端在程式結束時關閉(例如,如果您想將程式的輸出保留到螢幕上的終端),在python3.5中,您需要將此行放在程式的末尾:
輸入()
希望這可以幫助。
答案3
編寫一個 .bat 文件,該文件在命令提示字元中運行。
其中,C:/Python/Python38/python.exe為Python 3.8,c:/MyProject/mainFile.py為要執行的python腳本檔。
建立 .bat 檔案的捷徑並將其作為圖示放置在 Windows 螢幕上。這就對了。