Структура каталога папок выглядит следующим образом:
folder_A
folder_A/a.py
folder_A/subfolder_AA/b.py
folder_A/subfolder_AA/subsubfolder_testvideos/a.avi
a.py выглядит так ...
import cv2
import argparse as ap
def run(source=0, dispLoc=False):
cam=cv2.VideoCapture(source)
while True:
ret, img = cam.read()
if not ret:
exit()
if(cv2.waitKey(10)==ord('p')):
break
cv2.imshow("image",img)
cv2.destroyWindow("image")
# Other scripts here....
if __name__ =="__main__":
parser = ap.ArgumentParser()
group = parser.add_mutually_exclusive_group(required=True)
group.add_argument('-d', "--deviceID", help="Device ID")
group.add_argument('-v', "--videoFile", help="Path to Video File")
parser.add_argument('-l', "--dispLoc", dest="dispLoc",
action="store_true")
args = vars(parser.parse_args())
if args["videoFile"]:
source = args["videoFile"]
else:
source = int(args["deviceID"])
run(source, args["dispLoc"])
a.py пытается импортировать и запускать b и bнуждается в argparse.
Если я просто запущу b.py из терминала, команда запуска b будет иметь вид
python b.py -v subsubfolder_testvideos/a.avi
Я пытаюсь запустить a.py и запустить b.pyвнутри него.
В файле a.py я написал следующие коды:
import sys
sys.path.append('~/Desktop/folder_A')
sys.path.append('~/Desktop/')
from os import system
import subprocess
subprocess.call(["python", "b.py","-v testvideos/a.avi"], cwd="/subfolder_AA/", shell=True)
, и ошибка вывода: FileNotFoundError: [Errno 2] Нет такого файла или каталога: '/ subfolder_AA / ':' / subfolder_AA / '
Эта ошибка исходит от моей ошибочной команды, использующей subprocess.call?Как я мог это исправить?