鉴于您描述的代码,此错误可能出于三个原因出现:
python不在您的PATH, 或
secondary.py不在您当前的工作目录中。
Argument不在您当前的工作目录中。
从您编辑的问题来看,这听起来像是三个问题中的最后一个,这意味着该问题可能与此无关system……但是让我们看看如何解决所有三个问题。
首先,您想要一条通向python正在运行的相同路径primary.py,这就是sys.executable目的。
然后你想要一条通往secondary.py. 不幸的是,对于这个,没有办法(在 Python 2.3 中)可以保证工作......但在许多 POSIX 系统上,在许多情况下,sys.argv\[0\]这将是一个绝对路径primary.py,所以你可以使用dirname和joinoutos.path将其转换为的绝对路径secondary.py。
然后,假设Argument在脚本目录中,为此做同样的事情:
my_dir = os.path.dirname(sys.argv[0])
os.system('%s %s %s' % (sys.executable,
os.path.join(my_dir, 'secondary.py'),
os.path.join(my_dir, 'Argument')))