У меня есть файл кода Python 3, который я хочу запустить, используя мой код Python (2.7), и поэтому я написал следующее:
# run the code using a different python environment
python3 = '/usr/bin/python3'
execution_dir = '/path/to/the/dir/'
command = [python3, execution_dir + "mycode.py", "-i" + "/tmp/image.png"]
subprocess.check_call(command, env={'PYTHONPATH': '/usr/local/lib/python3.6/dist-packages'})
В результате он не распознает модули, упомянутые вКод Python 3, выбрасывающий ModuleNotFoundError: No module named 'mrcnn'
.
Я думаю, что это как-то связано с парадигмой модуля / пакета Python.Я скачал код Mask_RCNN с здесь , и он работает автономно без проблем.Однако, когда я использую описанный выше механизм для вызова внешнего вызова с другим PYTHONPATH
, он ведет себя так, будто не распознает свои модули.
Кто-нибудь знает, почему именно это происходит?