[PIPython] Ordinare elementi di una lista
Matteo Giacomazzi
matteo.giacomazzi
Ven 14 Gen 2005 20:40:46 CET
Ciao Arianna,
venerdì 14 gennaio 2005, hai scritto:
> Decido di inserire X numeri in una lista. Inserisco i numeri ad
> uno ad uno e se ne metto uno che ho già inserito, python me lo
> segnala e mi chiede un altro numero in modo che i numeri finali
> siano X come avevo scelto.
> Per esempio, se scelgo di inserire 15 numeri, se come secondo
> numero avevo messo il 4, e come decimo rimetto il 4, lui me lo
> segnala e attende ancora il decimo numero!
> Io per inserire i numeri in lista ho fatto così:
> numeri = input('Quanti numeri vuoi inserire? ')
> for n in range(numeri):
> valore = input('Inserisci il numero ' + str(n+1) + ': ')
> listanumeri.append(valore)
> dovrei forse mettere un IF dopo la lettura della variabile valore
> per controllare che non sia già presente nella lsita, ma.... se per
> al seconda volta metto un numero già inserito come faccio???
Invece di fare un for sul numero degli elementi che vuoi inserire, fai
un while sulla lunghezza della lista contenente i numeri già inseriti,
così:
>>> while len(listanumeri)<numeri:
valore=input('Numero [%d]: ' % (len(listanumeri)+1))
if valore not in listanumeri: listanumeri.append(valore)
Numero [1]: 1
Numero [2]: 2
Numero [3]: 3
Numero [4]: 4
Numero [5]: 1
Numero [5]: 1
Numero [5]: 1
Numero [5]: 2
Numero [5]: 2
Numero [5]: 2
Numero [5]: 7
>>>
Come vedi non mi lascia inserire un numero già presente nella lista.
Saluti,
Matteo
--
mailto:matteo.giacomazzi a email.it
Y!M matteo_giacomazzi
More information about the Python
mailing list