Скажем, я установил точку останова для следующего оператора if
в своем коде и запустил сеанс отладки в отладчике Python (например, pdb ):
if <statement> and <...>: <- Current location of debugger in a debugging session
// Do something
I Вы хотели бы задать отладчику логическое значение, которое <statement>
будет использовать из него в выражении if
. Как я могу сделать это надежно?
Давайте рассмотрим два сценария ios:
1-й сценарий: <statement>
не меняет Python имен или значений
Будет оценка <statement> == True
в отладчике возвращает надежно логическое значение, которое отладчик будет использовать для <statement>
в приведенном выше if
выражении, если мы продолжим выполнение отладчика? Если нет, то какое единственное универсальное выражение (независимо от характера <statement>
) будет делать это надежно?
2-й сценарий: <statement>
может изменить Python имена или значения
Я подозреваю, что ответ здесь "нет", но есть ли любой способ , чтобы спросить отладчик, какое значение <statement>
вернет "безопасно", т.е. без "компрометации" того, что было бы в противном случае «точное выполнение» этого оператора if
и любое последующее выполнение кода в течение оставшейся части сеанса отладки?