Найти - Пользователи
Полная версия: Отладка кода
Начало » Python для новичков » Отладка кода
1
AllGood
Всем добра.
Сразу скажу, что я в питоне 3 недели и перешел из PHP . Пишу API (Django + Django REST framework), пишу как крот копает (вслепую). Инструменты Python3.3, Ubuntu, Sublime.

В общем у меня проблемы с отладкой кода, по причине того что элементарно не могу просмотреть содержание объекта с которым работаю. В PHP такой проблемы не существовало - firebug спасибо за это тебе. Просмотрев статьи хабра я немного ужаснулся. Что за pdb, pudb - вспомнил первый курс и Tubo Paskal.
В общем сейчас я примерно вот на таком этапе, в код вставляю вот эту конструкцию:
import pdb; pdb.set_trace()
А в консоле использую такой прием:
(Pdb) pp dir(self)
['Meta',
 '__class__',
 '__deepcopy__',
 '__le__',
 '_name',
.....
 '_options_class',
 '_value',
 'get_nested_field',
 'get_pk_field',
......
Пытаясь лезть вглубь, пишу так:
(Pdb) pp dir(self._value)

По мимо того что это не удобно, это и мало информативно. Как я могу просмотреть структуру моего объекта (с ветвлением), просмотреть значения которые этот объект содержит в данный момент… ну и подобные вещи?
JOHN_16
AllGood
вы знаете, pdb это CLI, в реальности код пишут в IDE где есть debugger. Собственно поэтому и не возникают подобные вопросы. Думаю вам тоже захочется использовать полноценную IDE, какую выбрать - есть отдельная ветка форума, обратитесь к ней (от себя добавлю что сейчас чаще рекомендуют PyCharm Communiti Edition, реже PyDev или PyScripter Для Windows)
AllGood
Спасибо, я примерно так же думал. Нов гугле смог найти только только платные IDE, причем очень платные так сказать. Мне сейчас это не по карману. А кряками из принципа не пользуюсь.
alexsis
У pycharm вроде как есть бесплатное community edition.
JOHN_16
AllGood
плохо искали, Сравнение_IDE#Python
bismigalis
(Pdb) pp vars(self)
AllGood
bismigalis
(Pdb) pp vars(self)
Большое спасибо, это уже помогло!
По поводу PyCharm, то бесплатная версия поддерживает просто python, но не Django, жаль. Еще раз изучу IDE, вердикт напишу позже. Может кому то пригодиться .
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