Я учусь писать удобные для пользователя классы и методы, и я бы хотел, чтобы пользователи знали, как их использовать из терминала.Стандартный Python help(MYclass)
возвращает восемнадцать строк, которые мне не нужны, и это половина экрана для небольшого окна, и те, кто только изучает python, потеряют непрерывность, а предыдущие строки исчезнут сверху.
Есть ли способ?Я могу переопределить то, что показывает help(MYclass)
(или help(MYmethod)
), чтобы он отображал (в данном случае) однострочную строку документации?
Хотя в некоторых средах IDE строки документов отображаются в виде пузырьков, терминалы не взаимодействуют.( Отображаются ли в Python сообщения с тройными кавычками (docstring) при вводе в IDE, отличных от IDLE? ):
Поэтому вместо этого я обратился к help
за помощью, но help
слишком 10110 * очень полезен со всеми этими дополнительными строками шаблона.
Затем я подумал о переопределении справки:
def hhelp(x):
return x.__doc__
help = hhelp
но я решил, что это зло;как переопределение числа 7, и я бы хотел, чтобы help(some builtin)
все еще работал нормально, а выборочный угон происходил только для MYclass
es.
Всегда есть
def doc(x):
return x.__doc__
, еслиЯ не могу найти ничего, что выборочно перехватывает help()
.
class A(object):
"""instantiate a = A(x), then use a.sqr() to get x**2"""
def __init__(self, x):
self.x = x
def sqr(self):
return x**2
, что приводит к девятнадцати строкам.Я бы хотел показать только одну строку документации.
Help on class A in module __main__:
class A(__builtin__.object)
| instantiate a = A(x), then use a.sqr() to get x**2
|
| Methods defined here:
|
| __init__(self, x)
|
| sqr(self)
|
| ----------------------------------------------------------------------
| Data descriptors defined here:
|
| __dict__
| dictionary for instance variables (if defined)
|
| __weakref__
| list of weak references to the object (if defined)