2017-07-19 66 views
1

我想從桌面雙擊運行python項目。 我設法找到了shebang的路徑。我也將擴展名從.py改爲.command。我也運行了chmod + x name_of_script.py,據說它可以像我希望的那樣運行它。雖然當我點擊它發生這種情況:點擊運行python項目

Last login: Wed Jul 19 13:38:24 on ttys000 
___________:~ _____$ path filename.command ; exit; 
Traceback (most recent call last): 
    File "path filename.command", line 2, in <module> 
    import pygame 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/__init__.py", line 95, in <module> 
    from pygame.base import * 
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so, 2): no suitable image found. Did find: 
     /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so: no matching architecture in universal wrapper 
     /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so: no matching architecture in universal wrapper 
logout 
Saving session... 
...copying shared history... 
...saving history...truncating history files... 
...completed. 
Deleting expired sessions...8 completed. 

[Process completed] 

PS:我改變了「文件路徑」,並與_____所有私人名稱的所有文件路徑。

我試圖運行的文件叫做文件名。

+2

你使用什麼操作系統? – bakatrouble

+1

[雙擊運行Python文件]的可能重複(https://stackoverflow.com/questions/41639740/running-python-file-by-double-click) –

+0

我們從askubuntu的朋友有一個帖子來解決您的問題:) https://askubuntu.com/questions/596793/make-a-python-program-executable-from-its-icon –

回答

0

編輯:對不起,我誤解了這個問題。如果您希望能夠「雙擊」並運行該文件,請在完成以下步驟後使用簡單命令./your_file.pypython your_file.py製作bash腳本或批處理腳本(取決於操作系統)。

從我所瞭解的問題中,您想要通過打開它直接從文件執行您的Python程序。

你可以這樣做,通過使文件可執行。但在此之前,請確保您在第一行寫下了這個:#!/usr/bin/python。它被稱爲shebang線。路徑/usr/bin/python必須是Python解釋器所在的路徑。如果它位於其他地方,請寫下該路徑。

然後只需使文件可執行chmod +x your_file.py

您可以通過運行ls -l來驗證文件是否可執行,並且文件應該有+x標誌。

-1

你可以看看它: - http://www.py2exe.org/index.cgi/Tutorial 非常簡單的語言

+0

你怎麼知道這個問題針對的是Windows操作系統? –

+0

我不知道,但我只是提到它,所以如果是這樣的幫助,在任何時間提供 –

+0

謝謝你的快速回復,雖然我應該告訴你我是在一個mac中 – Lgcabrita

0

所以你的問題是「我怎樣才能在執行雙擊而不是當前的動作(這最有可能是與它打開我的文件某種編輯)?「

如果這是你的問題,答案是「這取決於」。根據您的操作系統,您可以在文件開始時追加一個shebang並使其可執行(用於基於Linux的OS-es),或者在基於Windows的OS-es中從批處理文件中調用腳本。

對於基於Linux的操作系統,實際上有兩種方法可以解決您的問題。 首先(也是最簡單的一種)是創建一個調用python解釋器來運行文件的bash文件。 例如: 在桌面上創建一個名爲run_my_script.sh的新文件。 在桌面上運行以下的bash命令(只產生一個終端和CD到桌面)授予執行權限到bash腳本:

chmod +x run_my_script.sh 

然後編輯這個新的bash文件,並添加以下行(替換name_of_my_script 。你pyfile PY):

python name_of_my_script.py 

用於Linux的其他解決方案是一個認領添加到你這樣的蟒蛇文件的開始(假設你的Python解釋器的位置是/ usr/bin中/蟒蛇):

#!/usr/bin/python 

然後讓Python文件可執行文件

chmod +x name_of_my_script.py 

對於基於Windows OS-ES,您可以在您的桌面稱爲run_my_script.bat(就像Linux)的創建一個簡單的批處理文件,(確保它的擴展.BAT,不是別的東西,像.bat.txt),它們只是運行以下命令:

python name_of_my_script.py 

在這裏有要在批處理腳本設置無可執行的標誌。只需創建它,編輯它,然後運行它。

對於Mac用戶,你應該是什麼能夠做的就是應用家當和你是一個有點不同的重命名你的.py文件.command

的家當內容(假設你的Python安裝路徑是/ usr/bin中/ ENV):

#!/usr/bin/env python 

所以添加到您的(現在的)name_of_my_script.command,使其可執行與

chmod +x name_of_my_script.command 

你應該可以運行它。

+0

我非常感謝你的答案。這是非常愚蠢的我的部分不包括我使用的操作系統,sry):我目前正在使用MacOs你有什麼想法如何解決我的問題?謝謝 – Lgcabrita

+0

這不是愚蠢的。沒有理由道歉。完整的答案應該考慮到這一點。例如,我的答案並不是完整的,在實施任何建議的方法時,您可能會遇到很多問題,但可以在更多問題中解決這些問題:D。或者在更多關於這個答案的討論中,爲了改進和改進它。畢竟這是本網站的目的。 – BoboDarph

+0

對於Mac OS,任何Linux答案都應該適用。如果您不打算將該文件移動到其他地方安裝了python的系統,我會使用shebang/make pyfile可執行文件。 – BoboDarph