[Python] C'e' un modo per abbreviare questa sintassi?
Gianni Valdambrini
gianni_valdambrini a yahoo.it
Mer 7 Nov 2012 10:02:56 CET
Ovviamente al posto del pass c'era un continue :)
________________________________
Da: Gianni Valdambrini <gianni_valdambrini a yahoo.it>
A: Discussioni generali sul linguaggio Python <python a lists.python.it>
Inviato: Mercoledė 7 Novembre 2012 10:00
Oggetto: Re: [Python] C'e' un modo per abbreviare questa sintassi?
Ti consiglierei una cosa come:
for ..:
try:
my_obj.codice = int(numero)
except ValueError:
pass
altro codice...
In pratica usa l'approccio EAFP piuttosto che il LBYL.. se non conosci l'argomento ti consiglio di leggerti quello che dice Alex Martelli nel suo libro Python in a Nutshell e che puoi trovare a questo indirizzo:
http://books.google.it/books?id=JnR9hQA3SncC&pg=PA134&lpg=PA134&dq=python+in+a+nutshell+eafp&source=bl&ots=Jb6TGw16-t&sig=r9or9Man_6S4bAbNTfVto72aGxw&hl=it&sa=X&ei=SSKaUL20C6uZ0QWJkIHwDw&ved=0CDYQ6AEwAg#v=onepage&q=python%20in%20a%20nutshell%20eafp&f=false
________________________________
Da: "orsomannaro a gmail.com" <orsomannaro a gmail.com>
A: Discussioni generali sul linguaggio Python <python a lists.python.it>
Inviato: Martedė 6 Novembre 2012 18:36
Oggetto: Re: [Python] C'e' un modo per abbreviare questa sintassi?
Il 06/11/2012 18:11, Vittorio Spina ha scritto:
> mi sfugge l'indentazione sotto l'if
hai ragione
for ... :
...
numero = get_num(...)
if
not numero.isdigit(): continue
my_obj.codice = int(numero)
...
In pratica se 'numero' non risulta essere convertibile in un valore numerico posso saltare il resto dell'elaborazione e passare all'elemento successivo del ciclo.
Sto cercando di evitare:
for ... :
...
numero = get_num(...)
if numero.isdigit():
my_obj.codice = int(numero)
...
dato di questi controlli che ce ne sono diversi e quindi nidifico gli if.
_______________________________________________
Python mailing list
Python a lists.python.it
http://lists.python.it/mailman/listinfo/python
_______________________________________________
Python mailing list
Python a lists.python.it
http://lists.python.it/mailman/listinfo/python
-------------- parte successiva --------------
Un allegato HTML č stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20121107/9eb65bfd/attachment-0001.html>
Maggiori informazioni sulla lista
Python