在 shell 中执行名称中包含空格的 python 文件

Executing a python file in shell that contains whitespace in its name

我在目录中。文件名为 "Ch2 Quiz"

在 conda 提示符下,我输入:

python 测验 Ch2.py

报错:

python: 无法打开文件 'Quiz': [Errno 2] 没有那个文件或目录

这不是 python 问题,更像是 shell 问题。您需要将 "Quiz Ch2.py" 作为一项传递给命令 "python" 作为其参数。

通常,shell 将允许以下任何一项:

python Quiz\ Ch2.py
python 'Quiz Ch2.py'
python "Quiz Ch2.py"

第一个使用 \ 来转义 space,第二个和第三个使用引号表示它是一个单独的标记,尽管我们在其中有一个 space。有些 shell 对单引号和双引号会有不同的解释(例如,如果你有一个可变分辨率)但在这个简单的例子中。通常是一样的。