22/05/08 15:07
rosafante
Ciao a tutti, ho bisogno di aiuto.
Devo fare un convertitore in moneta e devo fare una funzione che controlli che in una stringa non ci siano lettere ma solo numeri e con al massimo un solo punto.
Mi potete aiutare?..ve ne sarei molto grato!!!
Ultima modifica effettuata da rosafante 22/05/08 15:09
aaa
22/05/08 17:01
Overflow
ciao, per verificare se un carattere è un numero o una lettere puoi utilizzare il metodo isdigit() della classe stringa.
#isdigit è un metodo della classe stringa che verifica se a[i] è una lettera o un numero e nel caso è una lettera verifica
#se il "." non è stato trovato se quella lettera è un "." altrimenti esce dal programma.
a = "11344" #la stringa su cui testare
d = 0 #segna quando trovi "."
c = True #vero se ci sono solo numero, falso se ci sono caratteri
for i in range(len(a)):
if a[i].isdigit()==False and d==0:
if a[i]==".":
d = 1;
else:
print 'ci sono lettere'
c = False
break;
elif a[i].isdigit()==False and d==1:
print 'ci sono lettere'
c =False;
if c==True:
print "ci sono solo numeri"
Ultima modifica effettuata da Overflow 22/05/08 17:01
aaa