[python] Přetěžování metod v Pythonu
Petr Nesladek
petr.nesladek na seznam.cz
Pondělí Září 1 12:55:33 CEST 2008
>
> DM> A jak si mam potom vysvetlit vetu:
> DM> This is Python's approach to operator overloading, allowing
> DM> classes to define their own behavior with respect to language
> DM> operators.
>
> No tahle veta uz moc podle me komplikuje pretezovani. Kdyz se
> rozhoduju na zaklade nazvu parametru co budu provadet, nenazval bych
> to pretezovanim. Myslim si, ze podobnost s pretezovanim dle C uz uplne
> vymizela. Ja chtel jen jednoduse napsat, ze pretezovani metod, ktere
> se provadi v C se v pythonu provadi pretezovanim argumentu metod.
> ---------------------------------------------------------------------------
Myslím, že to není tak úplně mimo od přetěžování - pokud se budeme bavit o přetěžování metod,
to co řeší C klasickým přetěžováním metody - tj několik metod se setjným jménem a jiným počtem a jinými typy argumentů,
řeší python pomocí již u kolegů uvedené konstrukce
def a( *args, **kvrags):
a definicí co se má v kterém případě a s kterým argumentem dělat řeší tělo jediné metody - to je ten hlavní rozdíl - a to co bylo myšleno tím "Python approach..."
, že má každý přístup své pro a proti myslím netřeba rozebírat - nechci vyvlolat flamewar
(pokud to pomohlo pochopení - OK, jinak mne prosím opravte - ale nekamenovat -prosím :-))
a operator overloading by byla asi samostatná kapitola - ale na tu se necítím - to radějněkdo zkušenější
Petr
Další informace o konferenci Python