Попытка сделать отладчик вручную - это почти невозможно, но это можно сделать. Подумайте, если этот скрипт наброски:
- Найти путь сценария
- Копии временного файл сценарий
- Перейти к каждой строке, где контрольные точки
- Добавляет строку, чтобы остановить сценарий, например
; quit(-1)
. Но убедитесь, что он не добавлен между командами! (см. Ниже)
- Запуск сценария
- Распечатайте код отладки - но что?
Теперь, скажем, у вас есть две линии, такие как так:
55 print(someVar, someOtherVar +
56 someReallyLongVariable, orExpression(thatYouHaveTo, addAnotherLine))
И добавить точку останова в строке 55. Теперь:
55 print(someVar, someOtherVar + ; quit(-1)
56 someReallyLongVariable + orExpression(thatYouHaveTo, addAnotherLine))
И вы получите ошибка:
SyntaxError: invalid syntax
В командной строке. Хотя это не невозможно, лучше загрузить какое-то программное обеспечение, которое может это сделать, например, моя любимая среда разработки Python, PyCharm Сообщество (бесплатно). PyCharm может добавлять точки останова в ваш код и фактически выполнять его шаг за шагом.
Хотя я надеюсь, что вы загрузите среду IDE, если вы собираетесь сделать отладчик на месте, удачи. Тебе это понадобится.
Я действительно использую pycharm, но я запускаю свой скрипт с помощью специального рукописного бегуна, я запускаю его непосредственно в терминале pycharm, и я не могу понять, как отлаживать точки останова в моем случае – tinySandy
Вы можете узнать о контрольных точках [ в документации по PyCharm] (https://www.jetbrains.com/pycharm/help/breakpoints.html?search=break), а также [отладка вообще] (https://www.jetbrains.com/pycharm/ помощь/debugging.html? поиск = перерыв).
Если вы не можете прочитать его прямо сейчас, вы нажмете слева от строки, которую хотите добавить контрольные точки, и нажмите на ошибку справа от кнопки запуска, чтобы отладить код и остановиться в точке останова. –
Я знаю, как использовать отладчик в Pycharm для обычного скрипта, мне нужно знать, как отлаживать скрипт py, если он был запущен какой-либо другой программой в моем случае бегуном – tinySandy