[英]Why `python main.py\` (different with `python main.py`) executable on Windows?
# a.py
import b
# b.py
import a
print(1)
當我執行python a.py
, import b 效果很好,但python a.py\
不行。
我在 Windows 11 上運行它。我想這只會發生在 Windows 上,而不是 linux 上。
當我使用sys.path
檢查系統路徑時, python a.py\
包含: (currentDir)/a.py
,而不是(currentDir)
我想知道為什么python main.py\
可以在 Windows 上執行。 而且我猜它可能會導致一些基於 python 的程序的錯誤。
在 Windows 上,反斜杠是路徑分隔符,因此python a.py\
嘗試將名為“a.py”的目錄作為模塊運行(即它查找a.py\__main__.py
)。 在您的情況下, Python 將出現錯誤,並顯示如下消息:
can't open file 'c:\some\path\here\a.py\': [Errno 22] Invalid argument
因為“a.py”實際上是一個文件,所以嘗試將其視為目錄失敗。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.