Найти - Пользователи
Полная версия: Консоль в Eclipse+PyDev
Начало » Python для новичков » Консоль в Eclipse+PyDev
1 2
JOHN_16
Обернуть выполнение программы вспять, это как и со временем, невозможно.
doza_and
Мне кажется ТС хочет использовать не отладку а метод который условно назовем хаотичным блочным выполнением.
Берем питоновский файл, открываем и дальше выполняем в интерпретаторе выделенные блоки текста. Интерпретатор накапливает введенные нами изменения. Этот режим поддерживается почти всеми IDE и даже текстовыми редакторами. На счет Pydev не помню, помоему в нем не было, почему я от него и отказался, а может отказался потому что eclipce тормознутый больно.
andrey_mt
doza_and, всё куда проще: программа делает расчеты на основе исходных данных из файла, результаты расчета (т.е. значения неких переменных) - большие (для человека) объемы чисел. Выводить их все нет смысла, поэтому выводятся только самые важные результаты.
Но в процессе тестирования и проверок нужно оперативно узнавать значения любых других переменных.
Кроме того, часто после завершения расчета требуется оперативно изменить одну переменную в конкретном экземпляре класса и вызвать его метод при условии, что все остальные результаты работы программы, которые могут потребоваться этому методу, так же доступны.

Т.е. требуется, чтобы после завершения работы программы все переменные, классы, функции etc. остались в памяти, и чтобы я имел к ним “ручной” доступ из консоли.
Python Shell из IDLE это позволяет сделать по умолчанию, но как среда разработки он, к сожалению, не очень даже по моему трехмесячному опыту работы.
doza_and
Именно это я и имел ввиду.
например: pyscripter:
1 Открываем скрипт в IDE.
2 ctrl - A, ctrl-f7 - выполняем все
3 Все что насчиталось осталось в памяти. Можно смотреть любые переменные из консоли или в броузере ide.
4 если нужен полный рестарт интерпретатора ctrl-f2
Вот и все.

В качестве плюшки допустимо иметь в коде заготовки для стандартных сценариев расчета в виде:
def UsefulSet1():
   a=Ta()
   a.x=2
   a.y=3
   ........
   a.init1(48)
   a.DoSome1()
   print a.a
Их не сложно выделить в редакторе (это вам не с нуля все набивать и не выполнять не глядя на текст из скрипта) и выполнить
Если чтото не так в коде - можно оперативно поменять, не разрушая полученых объектов (которые может час насчитвывались).
andrey_mt
doza_and, pyscripter, похоже, именно то, что я искал. Спасибо.

Перевод там радует. Breakpoint - “точка останова”.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB