Ovviamente al posto del pass c'era un continue :)

________________________________
 Da: Gianni Valdambrini <gianni_valdambr...@yahoo.it>
A: Discussioni generali sul linguaggio Python <python@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: "orsomann...@gmail.com" <orsomann...@gmail.com>
A: Discussioni generali sul linguaggio Python <python@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@lists.python.it
http://lists.python.it/mailman/listinfo/python



_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a