[python] Dynamická dokumentace

radek py.cz na svarz.cz
Čtvrtek Leden 18 17:30:55 CET 2007


No ja bych zamer chapal u dynamicky vytvarenych trid - coz se tu nedavno resilo.

Otazka je, jak moc ma byt ten __doc__ dynamicky. Tedy jestli jenom pri
vytvareni dane tridy, nebo vzdycky pri cteni klass.__doc__

Radek

On 1/18/07, Petr Prikryl <PrikrylP na skil.cz> wrote:
> Vaclav Vais
> >
> > Ahoj, potřeboval bych vytvořit dynamickou dokumentaci k metodě.
> > Asi takto bych si to představoval...:
> >
> > class Trida:
> >   def metoda(self):
> >     o=JinyObjekt()
> >     def __doc__():
> >       return  o.jina_metoda.__doc__
> >     return  o.jina_metoda()
> >
> > print Trida().metoda.__doc__
> >
> > Jde mi to, že metoda pouze volá jinou metodu a chci aby předávala i
> > dokumentační řetězec.
>
> Nerozumím přesně záměru, ale standardní __doc__ je atribut
> (tj. datová složka) a ne metoda či funkce. Jako atribut
> metody je dokumentační řetězec součástí definice třídě
> a nevlastní jej tedy instance. Proto by asi nebylo rozumné,
> aby jej někdo měnil. Proto to ani nejde ('... is not writable').
>
> U obyčejné funkce to udělat jde, ale je to asi jen nedokonalost
> Pythonu. Nenapadá mě důvod, který by takový obrat ospravedlnil.
> Doporučuji zavést si vlastní atribut, který získá počáteční
> hodnotu z __doc__ a ten pak měnit.
>
> pepr
> _______________________________________________
> Python mailing list
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python
>


Další informace o konferenci Python