[Python] liste in Python errore costruzione matrice

Daniele San Giovanni sangiovanni.daniele a gmail.com
Gio 6 Giu 2013 17:43:09 CEST


for k in range(0, 0) :    non deve essere eseguito il ciclo

for k in range(0, 1) :    deve essere eseguito una volta per k=0

for k in range(0, 2):     deve essere eseguito con k=0 e con k

Guardando un po' di esempi ho notato che funziona già così. Attualmente non
funziona bene. Probabilmente il problema sarà da qualche altra parte.

Adesso faccio un po' di debug con calma.

Ti ringrazio tantissimo.




Il giorno 04 giugno 2013 14:44, Federico Figus
<figus.federico a gmail.com>ha scritto:

> Quando eseguo    for i in range(0, len(self.ArrChartData) - 1):
>>
>> se len(self.ArrChartData) è 0  voglio che il ciclo for non venga
>> eseguito.
>> se len(self.ArrChartData) è 1  voglio che il ciclo for non venga eseguito
>> una sola volta con k=0
>>
>
>  se len(self.ArrChartData) è 3 voglio che il ciclo for  venga eseguito tre
>> volte con k=0, 1, 2
>
>
> Nel tuo caso avrai:
> se len(self.ArrCharData) == 0 allora avrai range(0, -1) cioè []
> se len(self.ArrCharData) == 1 allora avrai range(0, 0) cioè []
> se len(self.ArrCharData) == 2 allora avrai range(0, 1) cioè [0]
> se len(self.ArrCharData) == 3 allora avrai range(0, 2) cioè [0, 1]
>
> se vuoi evitare che il ciclo venga eseguito per len(self.ArrCharData) uguale
> a 0 o a 1, allora ti consiglio di mettere prima del ciclo queste due righe
> di codice:
>
> if len(self.ArrCharData) < 2:
> continue
>
> Altro piccolo consiglio, quando ti serve un contatore usa xrange() al
> posto di range(), il primo rende un generator il secondo una list. In più
> non hai bisogno di specificare 0 visto che parte sempre da zero se non
> specifichi due argomenti, quindi:
> range(n) -> [0, 1, ...., n-1]
>
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
>
>


-- 
Daniele San Giovanni
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20130606/cce0d645/attachment.html>


Maggiori informazioni sulla lista Python