2014-10-10 2 views
3

Мне было интересно, можно ли пропустить инструкцию во время интерактивного сеанса отладки. Предположим, что я отладки следующий кодИнструкции по пропуску во время интерактивного сеанса отладки python

action_1() 
time.sleep(60) 
action_2() 

Если я в action_1(), мне придется подождать минуту, чтобы добраться до action_2(). Я бы хотел, чтобы отладчик мог пропустить следующую инструкцию без ее выполнения. Я пробовал искать его в Google, но ничего полезного не пришло.

Возможно, вы получите быстрые и грязные обходные пути, например, комментируете инструкцию сна или обертываете его инструкцией if, но они громоздки и подвержены ошибкам. Я ищу более элегантное решение.

ответ

4

Я считаю, что вы хотите Jump command в PDB:

J (УМЗ) LINENO

Установите следующую строку, которая будет выполнена. Доступно только в нижнем раме . Это позволяет вам снова вернуться и выполнить код, или перепрыгнуть вперед, чтобы пропустить код, который вы не хотите запускать.

Следует отметить, что не все прыжки допустимы - например, невозможно перепрыгнуть в середину цикла или из окончательного предложения .

Смежные вопросы