Python shebang 不工作

0 python windows cmd shebang python-3.x

Python安装在:

C:/Python/Python35
Run Code Online (Sandbox Code Playgroud)

在我的程序的顶部,我放了:

#!/usr/bin/env python3
Run Code Online (Sandbox Code Playgroud)

我打开 Windows 命令提示符并输入:

./words.py
Run Code Online (Sandbox Code Playgroud)

我得到的消息是:

"." is not recognized
Run Code Online (Sandbox Code Playgroud)

有人告诉我这在 Windows 上应该很好用,所以我很困惑?

Seb*_*ian 5

./words.py 不适用于 Windows 命令提示符,这种执行脚本的方式适用于 Linux/UNIX shell。

如果您使用的是 Python 3.3+:

该家当线被Windows的Python启动被遵守py,如果你把它安装(https://docs.python.org/3/using/windows.html#shebang-lines)。

确保您已安装并尝试使用以下方法启动:

py words.py

  • 在 cmd shell 中使用正斜杠通常需要双引号,因此请使用 `.\words.py` 或 `"./words.py"`。没有理由直接运行 py.exe。默认安装应将 .py 与“Python.File” progid 相关联,该 progid 使用 py.exe 运行脚本。 (2认同)
  • 在 Vista+ 中,如果设置环境变量 [`NoDefaultCurrentDirectoryInExePath`](https://msdn.microsoft.com/en-us/library/ms684269),例如 `set NoDefaultCurrentDirectoryInExePath=1`,则 cmd shell *需要*显式`.\words.py` 或 `"./words.py"`。在这种情况下,您还可以使用“py Words.py”。无需设置环境变量,您只需从工作目录运行“words.py”即可;这是经典的、安全性较低的行为,仍然是 Windows 中的默认行为。 (2认同)