[Python] Istruzioni ripetute ...

Carpediem i.carpediem a tiscali.it
Dom 3 Maggio 2015 21:21:41 CEST


Un saluto a tutti. Grazie al vostro aiuto, ho già risolto più di una 
volta alcuni miei dubbi. Ne approfitto ancora sperando nel medesimo 
positivo riultato.
Ho scritto un programmino per esercitarmi sulle notizioni acquisite.
Nel cercare una soluzione per evitare di ritrovarmi con un messaggio di 
errore nel caso in cui in input si immettesse un valore carattere invece 
di un numero, ho trovato come soluzione l'utilizzo di try.
Tutto ok perchè l'istruzione risponde a quanto da me voluto. Il 
problema, è che mi ritrovo con le stesse righe di istruzioni ripetute 
diverse volte (per giorni, ore, minuti, secondi, decimi e centesimi di 
secondo) il che rende il programma seppur funzionante, sicuramente 
scritto male.
Ho provato a creare una funzione ma credo di non aver capito molto bene 
come crearne una dato che, in questo caso, non ci sono riuscito avendo 
fallito ogni mio tentativo.
Qui a seguire, vi riporto quanto ho scritto (per i casi di giorni e ore) 
ma le stesse righe di istruzioni si ripetono di volta in volta fino a 
giungere ai centesimi di secondo e la cosa mi sembra ridicola.
Avete modo di farmi vedere come dovrebbe essere scritta una funzione per 
adattarla a questo caso? Magari è la volta buona che mi rendo conto come 
ci si può riuscire.
Seguono istruzioni scritte per i primi due casi previsti (giorni e ore).
Grazie a tutti.


while True:
     try:
         giorni = eval(input("Inserisci il numero di giorni impiegati 
per coprire l'intero percorso "))
         break
     except NameError:
         print()
         print("Devi inserire un valore numerico")
         print()
print()
while True:
     try:
         ore = eval(input("Inserisci il numero delle ore impiegate per 
coprire l'intero percorso "))
         break
     except NameError:
         print()
         print("Devi inserire un valore numerico")
         print()
print()


Maggiori informazioni sulla lista Python