![](/img/trans.png)
[英]Why do I get “ImportError: No module named” when I try to run my Python script via the Interpreter?
[英]How do I get linux to automatically run my python script in the Python interpreter?
我已經決定,移出.NET泡沫並開始嘗試其他技術對我有好處。 我運行了Ubuntu12並安裝了python2.7和3.2。 我可以直接在解釋器中運行代碼。
我在文件系統上有一個名為Standalone.py的基本腳本:
#!/usr/bin/env python3.2
import sys
print("this is a standalone script.")
當我在我的bash提示符下輸入$ python3.2 Standalone.py
。 我得到一個回復說this is a standalone script
。 但是當我輸入$ Standalone.py
它會告訴我找不到命令。
我該如何運行這樣的腳本?
謝謝你的幫助。
我將Standalone.py的權限更改為755.然后我運行了命令:
$ ./Standalone.py
並收到消息:
: No such file or directory
然后我將Standalone.py的權限切換回644.然后我跑了
$ ./Standalone.py
我收到了這條消息
-bash: ./Standalone.py: Permission denied
有什么我想念的嗎?
您需要使用可執行腳本
chmod +x Standalone.py
通常,不會搜索當前目錄中的可執行文件,因此您需要使用
./Standalone.py
告訴shell腳本在當前目錄中。
確保你的腳本文件有linux換行符(只是\\n
)而不是windows換行符( \\r\\n
)。 你在Windows上編寫腳本了嗎? 這發生在我身上一次。 您應該檢查您的編輯器設置。
你的腳本應該以#!/usr/bin/python
開頭而不是#!/usr/bin/env python3.2
確保您位於腳本所在的文件夾中,您可以使用ls
進行檢查
chmod +x Standalone.py
./Standalone.py
首先,要執行腳本,它需要是可執行的。 所以你要么做chmod + x $文件還是chmod 0740 $文件。 當您將文件權限設置為644時,您將立即執行,因此如果給您一個錯誤。 如果您不確定執行權和八進制表示法,可以使用: http : //permissions-calculator.org/decode/0644/ 。 要真正回答你的問題,如果你想用$ file.py調用腳本,它需要在你的PATH變量中。 您可以使用echo $ PATH顯示它。 這些是搜索要執行的腳本的目錄。 因此,您只需要為腳本提供正確的可執行文件,並將其放在PATH提供的目錄之一中。
你能檢查/ usr / bin / python或/usr/bin/python3.2是否存在
執行以下comamnd:
which python3.2
然后在腳本頂部使用生成的路徑。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.