NameError: name 'img' is not defined
в python файл «Распознавание жестов» возвращает ошибку при запуске последвотельно 2 раза из другые файлы с помощью метода exec(open('file.py')) , но он работает при запуске самого файла. Подскажите пожалуйста есть ли ещё другые варианты?
файл A
exec(open('subjects.py').read())
файл subjects.py
success, img = cap.read()
img = cv2.flip(img, 1)
hands, img = detector.findHands(img, flipType=False)
....
....
exec(open('Matem.py').read())
нет проблем с библиотекой или версией. Основная ошибка при запуске файла через несколько файлов.
Надеюсь, мой вопрос был ясен. Потому что это мой первый вопрос на этом сайте)
Ответы (2 шт):
Как один из вариантов, Вы можете использовать функцию для передачи переменной img между файлами. Таким образом Вам не придется передавать эту переменную через аргументы командной строки или глобальные переменные.
Файл subject.py:
def get_image():
success, img = cap.read()
img = cv2.flip(img, 1)
hands, img = detector.findHands(img, flipType=False)
return img
...
Файл A:
from subjects import get_image
img = get_image()
исправил ошибку импортируя в файле A subjects на функцию, где должен запускаться файл subjects.py
def func():
...
import subjects
subjects
...