Python:想要使用python中传递的命令行参数,作为将在python脚本中执行的另一个命令的参数

时间:2015-10-21 11:34:35

标签: python

我正在尝试编写一个python脚本,在传递给此脚本的参数中,需要将其用作将在此脚本中执行的命令的参数。 在cygwin上执行此脚本

例如: -  x.py file1

在x.py脚本中:

file = sys.argv[1]

data = os.popen('ar t file').read()

当执行此命令时,不采用文件的值(即file1),而不是'文件'变量被视为一个文件,因此会抛出一个错误:filename' file'无法找到。是否可以将file的值作为参数传递给此命令。

谢谢, Akhilesh

1 个答案:

答案 0 :(得分:1)

这与命令参数或传递它们无关,而是对字符串的基本误解。你有一个包含单词“file”的硬编码字符串,你实际上并没有在任何地方传递function call_function(){ // your script here } 变量的值。您可以使用字符串替换:

file

data = os.popen('ar t {}'.format(file)).read()