Мой коллега недавно прислал мне несколько файлов .py, которые он написал, вместе с блокнотом jupyter, который вызывает функции из этих файлов. Код запускается в среде conda. Когда я пытаюсь отладить код с помощью pdb.set_trace (), он начинает работать, как и ожидалось. С помощью команды «l (ist)» я вижу другой код в ячейке (см. Код ниже). Однако, как только я пытаюсь пройтись по коду с помощью «n (ext)», он начинает трассировку через неожиданное выполнение вместо перехода ко второй строке, в которой определена переменная «data_name». Почему это так, и что я могу сделать, чтобы построчно перебирать свой код?
--Return--
> <ipython-input-16-a74c145a81f7>(1)<module>()->None
-> import pdb; pdb.set_trace()
(Pdb) l
1 -> import pdb; pdb.set_trace()
2 data_name = 'SLP-Control-Realigned2hr'
3 fname_map = '{}.cycle{:03d}.map.lase'
4 fname_llm = '{}.cycle{:03d}.llm.lase'
5
6 ncycles = 1
7 icycles = np.arange(ncycles)
[EOF]
(Pdb) n
> c:\users\pauld\anaconda3\envs\lase\lib\site-packages\ipython\core\interactiveshell.py(3329)run_code()
-> sys.excepthook = old_excepthook
(Pdb) l
3324 await eval(code_obj, self.user_global_ns, self.user_ns)
3325 else:
3326 exec(code_obj, self.user_global_ns, self.user_ns)
3327 finally:
3328 # Reset our crash handler in place
3329 -> sys.excepthook = old_excepthook
3330 except SystemExit as e:
3331 if result is not None:
3332 result.error_in_exec = e
3333 self.showtraceback(exception_only=True)
3334 warn("To exit: use 'exit', 'quit', or Ctrl-D.", stacklevel=1)```