|
|
|
![]() |
|
Strumenti |
![]() |
#141 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 4683
|
C’è un modo per stampare la lunghezza di un intero? Perché sono arrivato al capitolo 8.3, c’è questa lista: [“Ciao!”, 1, [“mela”, “banana”, “pera”], [1,2,3]] e l’esercizio consiste nel scrivere un ciclo che attraversa questa stringa e stampa la lunghezza di ogni elemento. Il codice che ho scritto è questo:
Codice:
Lista = ["Ciao!", ["mela", "pera", "banana"], [1,2,3]] i = 0 while i < len(Lista): Elemento = Lista[i] print Lista[i], "-->", len(Elemento) i = i + 1 P.S: mettendo la variabile Elemento fuori dal ciclo, non funziona il codice nonostante la varibile i viene incrementata ad ogni ciclo. Il valore di i nella variabile Elemento resta il primo, cioè 5. Io pensavo che venisse “sostituito” in automatico il valore di i nella variabile Elemento quanto i incrementa di 1 ad ogni ciclo
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito. |
![]() |
![]() |
![]() |
#142 |
Senior Member
Iscritto dal: Aug 2003
Città: Barletta (BA)
Messaggi: 939
|
Alcuni piccoli consigli...per la "lunghezza" di numeri, googlando ho trovato len( str(numero) ) praticamente converte in stringa il numero e poi ne calcola la lunghezza
![]() Ma devi stare attento ad applicarla solo per i numeri Poi ti sei complicato la vita usando while, quando con un for avresti potuto fare Codice:
lista = ['Ciao!', ['mela', 'pera', 'banana'], [1,2,3]] for elemento in lista: print elemento, '-->', len(elemento)
__________________
In a world without fences, who needs Gates? Power by: Fedora 8 - Mac OS X 10.4.11 Ultima modifica di nico159 : 27-10-2008 alle 20:03. |
![]() |
![]() |
![]() |
#143 | |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 4683
|
Quote:
Riguardo il for, l'ho pure scritto il codice con il for prima di quello con il while ![]() P.S: guardate qua: Codice:
for Frutto in ["mela", "pera", "banana"]: print "Mi piace la" + Frutto + "!" Mi piace lamela! Mi piace lapera! Mi piace labanana! Se al posto dei + si mette la , normalmente allora tutto ok (tranne per il punto escalmativo che è lontano di uno spazio e si dovrebbe mettere direttamente nella lista)
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito. |
|
![]() |
![]() |
![]() |
#144 |
Senior Member
Iscritto dal: Aug 2003
Città: Barletta (BA)
Messaggi: 939
|
Sì, all'atto pratico cambia niente
![]() Usando l'operatore +, in questo caso, concateni più stringhe e stampi il nuovo oggetto stringa così creato. Invece usando , nell'istruzione print fai sì che python mostri più stringhe su una sola riga separate una dall'altra da uno spazio (ecco perchè il punto esclamativo usando , viene separato anche lui da uno spazio). In questo caso non c'è differenza, ma vedrai che l'operatore + ti sarà fondamentale ![]()
__________________
In a world without fences, who needs Gates? Power by: Fedora 8 - Mac OS X 10.4.11 |
![]() |
![]() |
![]() |
#145 | |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 4683
|
Quote:
Comunque tu programmi in Python allora. Lo hai studiato nella documentazione ufficiale? Ora con la versione 3 ci saranno un sacco di cambiamenti e la compatibilità diventerà nulla P.S: ho modificato il ciclo cosi, ma mi dà sempre l'errore che la lunghezza si calcola sulle stringhe: Codice:
Lista = ["Ciao!", 1, ["mela", "pera", "banana"], [1,2,3,]] for elemento in Lista: if type(elemento) == type(1): str(elemento) print elemento, '-->', len(elemento)
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito. |
|
![]() |
![]() |
![]() |
#146 |
Member
Iscritto dal: Dec 2007
Città: .......
Messaggi: 188
|
Codice:
Lista = ['ciao!', 1, ['mela', 'pera', 'banana'], [1, 2, 3]] def Function2(Lista): for elemento in Lista: if type(elemento) == int: print len(str(elemento)) else: print elemento, len(elemento)
__________________
------------------------------------------------------------------------------------------------------------ Intel Core 2 Duo 2.66Ghz - 3gb Ram - Hard Disk 250gb - Scheda Video: GeForce 8500 Gt da 512mb - Windows Xp Pro SP3 IPHONE 3GS 16GB BLACK MACBOOK PRO 15,4" 2.40GHz - 4GB RAM 320GB HD ------------------------------------------------------------------------------------------------------------ |
![]() |
![]() |
![]() |
#147 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 4683
|
Questo lo potevo fare pure io, volevo cercare un metodo alternativo per semplificare il codice
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito. |
![]() |
![]() |
![]() |
#148 | |
Member
Iscritto dal: Dec 2007
Città: .......
Messaggi: 188
|
Quote:
Non riesco a capire.....dici che il codice non funziona ti posto quello che funziona e mi dici che eri capace di farlo pure te???
__________________
------------------------------------------------------------------------------------------------------------ Intel Core 2 Duo 2.66Ghz - 3gb Ram - Hard Disk 250gb - Scheda Video: GeForce 8500 Gt da 512mb - Windows Xp Pro SP3 IPHONE 3GS 16GB BLACK MACBOOK PRO 15,4" 2.40GHz - 4GB RAM 320GB HD ------------------------------------------------------------------------------------------------------------ |
|
![]() |
![]() |
![]() |
#149 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 4683
|
Allora non mi capisci. Che devo postare a fare il codice che funziona? Se posto un codice vuol dire che voglio capire il perchè non funziona o come migliorarlo. Non ha senso che posto un codice che mi funziona
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito. |
![]() |
![]() |
![]() |
#150 | |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
![]()
__________________
![]() |
|
![]() |
![]() |
![]() |
#151 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 4683
|
Forse non hai letto quello che ho scritto sotto. Se dovete prendere in giro non posto più e la finiamo cosi
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito. |
![]() |
![]() |
![]() |
#152 | |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
ridevo solo perchè l'avevo notato anch'io questo tuo atteggiamento... Lo facevi anche quando postavi con i vari cloni, dopo che davamo la soluzione al tuo clone postavi con questo nick per metterti in mostra ![]() Se permetti io ho trovato il tuo atteggiamento piuttosto offensivo, dato che sembrava che ci volessi prendere x il culo pensando che non se ne accorgesse nessuno dei tuoi cloni ![]()
__________________
![]() |
|
![]() |
![]() |
![]() |
#153 | |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 4683
|
Quote:
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito. |
|
![]() |
![]() |
![]() |
#154 |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
ah vabbè..
allora si può chiudere qui. E' inutile parlare con chi tenta ancora di prendere per il culo dopo tutto questo. ![]() Guarda che non siamo idioti come tu pensi. ![]() Adieu.
__________________
![]() |
![]() |
![]() |
![]() |
#155 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 4683
|
Io non penso nè che siete idioti nè voglio prendere per il culo nessuno. Invece di sparare giudizi ragiona sulle cose. Non è bello essere accusati cosi ed essere aggrediti ogni volta. Se tu o altri siete nati imparati fortunati voi, che vi devo dire
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito. |
![]() |
![]() |
![]() |
#156 | ||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Quote:
Codice:
Lista = ['ciao!', 1, ['mela', 'pera', 'banana'], [1, 2, 3]] Lunghezze = [len(str(Elemento)) for Elemento in Lista] print Lunghezze
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
||
![]() |
![]() |
![]() |
#157 | |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 4683
|
Quote:
Questa sintassi non la conoscevo, però il tuo codice stampa solo la lunghezza dei vari elementi (anche se comunque la lista con la frutta mi stampa 26 e quella con i numeri 9), l'esercizio invece vuole che si stampi sia l'elemento sia la lunghezza. Ma comunque lo avevo fatto sia con il for che con il while, volevo solo rovare a ridurre ancora di più il codice. Riguardo il Python 3, io ho letto cosi. Anche se il 2.xx verrà ancora sviluppato e che all'inizio non ci sarà completa incopatibilità
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito. |
|
![]() |
![]() |
![]() |
#158 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Codice:
Lista = ['ciao!', 1, ['mela', 'pera', 'banana'], [1, 2, 3]] NuovaLista = [(Elemento, len(str(Elemento))) for Elemento in Lista] print NuovaLista
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#159 | |
Member
Iscritto dal: Dec 2007
Città: .......
Messaggi: 188
|
Quote:
Cdimauro a proposito visto che sei tornato mi daresti una mano su un esercizio?? Avrei bisogno di un input tanto x iniziare poi me la cavo da solo
__________________
------------------------------------------------------------------------------------------------------------ Intel Core 2 Duo 2.66Ghz - 3gb Ram - Hard Disk 250gb - Scheda Video: GeForce 8500 Gt da 512mb - Windows Xp Pro SP3 IPHONE 3GS 16GB BLACK MACBOOK PRO 15,4" 2.40GHz - 4GB RAM 320GB HD ------------------------------------------------------------------------------------------------------------ Ultima modifica di 88MIKI88 : 28-10-2008 alle 12:11. |
|
![]() |
![]() |
![]() |
#160 | ||
Senior Member
Iscritto dal: Mar 2007
Messaggi: 4683
|
Quote:
Quote:
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito. |
||
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:45.