从子包运行Python os.system

时间:2014-05-07 10:04:54

标签: python macos

我需要使用安装了外部软件的旧版python 2.6来运行python文件。 为此,我使用了os.system,例如

os.system('""path/old_python.exe" "file.py""')

(请注意,(&#39;&#34;)的奇数是由于我在Windows上运行时包含空格c:/program files (x86)/..的路径。) < / p>

如果从根目录运行,此代码字符串可以正常工作。但是,我想将此os.system调用放在子包中的模块中,然后从根模块运行它。层次结构看起来像这样:

/root
    call_os_module.py
    /subpack1
        os_module.py
        file.py

如果我运行此操作,我收到错误:

path/old_python.exe: can't open file 'file.py': [Errno 2] No such file or directory

我已将subpack1的完整路径添加到sys.path。但是,我仍然收到相同的错误,操作系统无法找到该文件。我该如何解决这个问题?