У меня есть сценарий main.py
в моем проекте, который запускает модель, которая организована в пакет python. Структура проекта выглядит следующим образом:IndexError: индекс индекса вне диапазона при попытке запустить cProflie
project/
model/
data/
...
__init__.py
...
tests/
...
main.py
integrator.py
utils.py
Когда я бегу main.py непосредственно т.е. python main.py
он работает отлично. Тем не менее, я пытаюсь профиль main.py с помощью:
python -m cProfile -o main.py
и получить следующее сообщение об ошибке:
Traceback (most recent call last):
File "C:\Users\pbreach\Anaconda3\lib\runpy.py", line 184, in _run_module_as_main
"__main__", mod_spec)
File "C:\Users\pbreach\Anaconda3\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Users\pbreach\Anaconda3\lib\cProfile.py", line 160, in <module>
main()
File "C:\Users\pbreach\Anaconda3\lib\cProfile.py", line 155, in main
parser.print_usage()
File "C:\Users\pbreach\Anaconda3\lib\optparse.py", line 1587, in print_usage
print(self.get_usage(), file=file)
File "C:\Users\pbreach\Anaconda3\lib\optparse.py", line 1573, in get_usage
self.expand_prog_name(self.usage))
File "C:\Users\pbreach\Anaconda3\lib\optparse.py", line 1550, in expand_prog_name
return s.replace("%prog", self.get_prog_name())
File "C:\Users\pbreach\Anaconda3\lib\optparse.py", line 1545, in get_prog_name
return os.path.basename(sys.argv[0])
IndexError: list index out of range
Я знаю разницу между python module.py
и python -m module
до степени this answer (не очень) ... Но я не уверен, что я здесь делаю неправильно. Из трассировки кажется, что недостаточно аргументов передано скрипту, но я не знаком с cProfile.
Любые идеи относительно того, почему эта ошибка возникает? Как я могу получить код в профиль?
Ач. хорошо, я должен был выбрать это из трассы. Просто предположил, что по какой-то причине это будет связано с чем-то, связанным с импортом (в последнее время это очень сложно). – pbreach