Я недавно задал этот вопрос об импорте произвольного количества модулей в python.Я получил два хороших ответа.Оба сработали, когда я запрограммировал его в spyder.
Сегодня я запустил скрипт из своего терминала в качестве теста, так как я планирую перенести свой код на свой сервер.Но на этот раз сценарий потерпел крах с этой трассировкой:
File "evaluation.py", line 27, in __init__
self.solvers.append( __import__(file_name[:-3]) ) #cut away .py
ImportError: No module named 'v00'
Архитектура файла выглядит следующим образом:
-evaluation.py
-evaluation
-v00.py
-v01.py
Код в файлеvaluation.py, вызывающий проблему, следующий:
os.chdir('evaluation')
for file_name in glob.glob("*.py"):
self.solvers.append( __import__(file_name[:-3]) ) #cut away .py
for idx, solver in enumerate(self.solvers):
self.dqn.append(solver.DQNSolver() )
Почему это работает в spyder, а не в терминале?Они оба используют python 3.5, и я дважды проверил, что оба находятся в папке «оценка» при выполнении вредоносной строки.