17

如何使用包含空格的参数运行 python?我正在使用 MacOS

例如,

>python testProgram.py argument 1 argument 2

其中“论点 1”是一个论点?

4

4 回答 4

28

其中“参数 1”是单个参数。

你基本上已经在那里回答了你自己的问题,"argument 1"确实是一个单一的论点。

换句话说,您需要引用它,例如:

python testProgram.py "argument 1" 'argument 2'

然而,这实际上不是 Python 问题,它取决于您用于运行 Python 脚本的 shell。

例如,bash单引号和双引号之间存在差异,其中最重要的可能是各种扩展,例如$HOME- 单引号变体不执行这些扩展。

于 2012-08-10T02:56:39.363 回答
3

将包含空格的参数用双引号括起来

> python testProgram.py "argument 1" "argument 2"

这将在 Windows 和 Linux 下工作,因此在 Mac OS 下也可以。

于 2012-08-10T02:54:05.993 回答
2

或者subprocess从 python 本身内部使用:

subprocess.call(['python','testProgram.py','argument 1','argument 2'])

但其他答案更有可能是您想要的。

于 2012-08-10T03:04:11.450 回答
1

尝试:

>python testProgram.py "argument 1" "argument 2"
于 2012-08-10T02:53:15.770 回答