Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 11, 2014 12:08:16

AllGood
Зарегистрирован: 2014-03-02
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Отладка кода

Всем добра.
Сразу скажу, что я в питоне 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)

По мимо того что это не удобно, это и мало информативно. Как я могу просмотреть структуру моего объекта (с ветвлением), просмотреть значения которые этот объект содержит в данный момент… ну и подобные вещи?

Отредактировано AllGood (Апрель 11, 2014 14:20:48)

Офлайн

#2 Апрель 11, 2014 16:49:17

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Отладка кода

AllGood
вы знаете, pdb это CLI, в реальности код пишут в IDE где есть debugger. Собственно поэтому и не возникают подобные вопросы. Думаю вам тоже захочется использовать полноценную IDE, какую выбрать - есть отдельная ветка форума, обратитесь к ней (от себя добавлю что сейчас чаще рекомендуют PyCharm Communiti Edition, реже PyDev или PyScripter Для Windows)



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Апрель 11, 2014 18:01:57

AllGood
Зарегистрирован: 2014-03-02
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Отладка кода

Спасибо, я примерно так же думал. Нов гугле смог найти только только платные IDE, причем очень платные так сказать. Мне сейчас это не по карману. А кряками из принципа не пользуюсь.

Офлайн

#4 Апрель 11, 2014 19:13:39

alexsis
Зарегистрирован: 2013-07-26
Сообщения: 148
Репутация: +  9  -
Профиль   Отправить e-mail  

Отладка кода

У pycharm вроде как есть бесплатное community edition.

Офлайн

#5 Апрель 12, 2014 04:22:57

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Отладка кода

AllGood
плохо искали, Сравнение_IDE#Python



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#6 Апрель 12, 2014 07:55:00

bismigalis
Зарегистрирован: 2010-10-02
Сообщения: 449
Репутация: +  47  -
Профиль   Отправить e-mail  

Отладка кода

(Pdb) pp vars(self)

Офлайн

#7 Апрель 14, 2014 15:12:06

AllGood
Зарегистрирован: 2014-03-02
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Отладка кода

bismigalis
(Pdb) pp vars(self)
Большое спасибо, это уже помогло!
По поводу PyCharm, то бесплатная версия поддерживает просто python, но не Django, жаль. Еще раз изучу IDE, вердикт напишу позже. Может кому то пригодиться .

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version