Я использую pdb.set_trace () + n для перехода по каждой строке моего кода. В большинстве случаев это работает. Теперь у меня есть новый код, и я настроил трассировку до a для l oop. Когда я нажимаю 'n', вместо того, чтобы идти в For l oop, он попадает в какой-то файл interactiveshell.py:
for item in init_times:
(Pdb) n
> c:\anaconda\lib\site-packages\ipython\core\interactiveshell.py(3329)run_code()
-> sys.excepthook = old_excepthook
Как мне выйти из этого и возобновить отладку кода построчно ? Требуется вечность, чтобы пройти через эту интерактивную оболочку, и я понятия не имею, что это такое или что мне нужно отлаживать в этом.
Это снимок кода, в котором у меня есть трассировка перед оператором If:
for item in init_times:
pdb.set_trace()
if item[0]=='From Seconds':
start_0.append(1)
elif item[0]=='To Seconds':
end_last.append(1)
if len(start_0)>0 and len(end_last)>0:
full_range = 1
print('full range')
elif len(start_0)>0 and not len(end_last)>0:
begin_range_at_0 = 1
print('data begins at 0')
elif not len(start_0)>0 and len(end_last)>0:
end_range_at_end = 1
print('data ends at last row')
else:
min_start = int(min(t1_comp_init[0], t1_stat_init[0])) # min_start variable is used in statistics() and comparisons() when both
max_end = int(max(t1_comp_init[0], t2_stat_init[0]))