Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 4, 2018 20:32:48

Levitanus
Зарегистрирован: 2018-05-01
Сообщения: 46
Репутация: +  0  -
Профиль   Отправить e-mail  

как заменить докстринги?

как добавить кастомные докстринги к уже созданным объектам?
Ну для функций есть wraps и partial, тут понятно.
А вот можно ли добавить докстринг к классу?
А к объекту?
Спрашиваю в целях поддержки интерактивной документации в IDE

Офлайн

#2 Сен. 4, 2018 22:40:57

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2843
Репутация: +  186  -
Профиль   Отправить e-mail  

как заменить докстринги?

 >>> def foo(): pass
...
>>> foo.__doc__ = "11111"
>>> help(foo)



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#3 Сен. 5, 2018 00:55:36

Levitanus
Зарегистрирован: 2018-05-01
Сообщения: 46
Репутация: +  0  -
Профиль   Отправить e-mail  

как заменить докстринги?

дак вот в том и дело, что чот ни один IDE после этого не хочет их показывать…
Ну как, ни один… IDLE вообще, кажись, хелп не выводит, хотя сигнатуры вроде подставляет.
PyCharm выдает только реально прописанный докстринг
Атом и ST3 + Anaconda также.
А так то да, через print(help(foo)) все гуд

Офлайн

#4 Сен. 5, 2018 11:07:51

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2843
Репутация: +  186  -
Профиль   Отправить e-mail  

как заменить докстринги?

> вот в том и дело, что чот ни один IDE после этого не хочет их показывать…

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



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version