繁体   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