我正在尝试使用以下方法从另一个脚本运行python脚本:
from subprocess import call
call(['python script.py'])
但我收到以下错误:
OSError:[Errno 2]没有这样的文件或目录
这些文件都在同一目录中。请帮助。
答案 0 :(得分:1)
将python
和script.py
指定为分开的项目:
call(['python', 'script.py'])
答案 1 :(得分:1)
如果父脚本是从另一个目录运行的,那么您需要一种方法来查找脚本的存储位置:
#!/usr/bin/env python
import os
import sys
from subprocess import check_call
script_dir = os.path.dirname(sys.argv[0])
check_call([sys.executable or 'python', os.path.join(script_dir, 'script.py')])
另见How to properly determine current script directory in Python?