簡體   English   中英

為什么`python main.py`(與`python main.py`不同)在Windows上可執行?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM