[python] pspad kompilace
Jan Bednařík
jan.bednarik na gmail.com
Čtvrtek Červen 19 22:14:21 CEST 2008
Dne 19. ÄŤerven 2008 10:56 BoneFlute <boneflute na taco-beru.name> napsal(a):
> Jakub napsal(a):
>
> > def jmeno(self, nazev=None):
> > if nazev == None:
> > print self.nick
> > else:
> > self.nick=nazev
>
>
> Mimochodem, má nÄ›kdo zkušenosti proÄŤ se pouĹľĂvá takováto konstrukce
> nastavovánà proměnné?
> PĹ™iznávám, Ĺľe jsem si tĂm takĂ© prošel, ale poslĂ©ze opustil. Jednak to
> subjektivně nenà moc přehledné, druhak je to silný nezvyk proti
> zaběhnutým coding standards - zvláště když má python docela propracovaný
> systém přetěžovánà přiřazovánà atributů a properties.
>
> ZajĂmalo by mÄ›, zda to má nÄ›jakĂ© praktickĂ© vĂ˝hody.
>
Je to praseÄŤina a rozhodnÄ› bych se toho vyvaroval. Jednak pokud po vytvoĹ™enĂ
instance tĹ™Ădy zavoláš tu metodu bez parametru, nebo z jakĂ©hokoliv dĹŻvodu
(chyba na vstupu nebo bug jinde) jako název pošleš hodnotu None, tak se to
bude snaĹľit vypsat neexistujĂcĂ promÄ›nou (self.nick) => AtributeError. A i
kdyby self.nick uĹľ existoval, to zavolánĂ s hodnotou None zpĹŻsobĂ
neočekávané chovánà (print, nebo jindy return), které může způsobit spoustu
těžko dohledatelných bugů.
Honza
------------- daląí část ---------------
HTML pĹ™Ăloha byla odstranÄ›na...
URL: http://www.py.cz/pipermail/python/attachments/20080619/177948fa/attachment.htm
Daląí informace o konferenci Python