<div dir="ltr"><div>for k in range(0, 0) :    non deve essere eseguito il ciclo<br><br>for k in range(0, 1) :    deve essere eseguito una volta per k=0<br><br>for k in range(0, 2):     deve essere eseguito con k=0 e con k<br>
<br>Guardando un po' di esempi ho notato che funziona già così. Attualmente non funziona bene. Probabilmente il problema sarà da qualche altra parte.<br><br>Adesso faccio un po' di debug con calma.<br><br>Ti ringrazio tantissimo.<br>
<br></div><br> </div><div class="gmail_extra"><br><br><div class="gmail_quote">Il giorno 04 giugno 2013 14:44, Federico Figus <span dir="ltr"><<a href="mailto:figus.federico@gmail.com" target="_blank">figus.federico@gmail.com</a>></span> ha scritto:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="im"><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">
Quando eseguo     for i in range(0, len(self.ArrChartData) - 1):<br>
<br>se len(self.ArrChartData) è 0  voglio che il ciclo for non venga eseguito.  <br>se len(self.ArrChartData) è 1  voglio che il ciclo for non venga eseguito una sola volta con k=0<br></blockquote></div><div><br><div class="im">
<blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">
 se len(self.ArrChartData) è 3 voglio che il ciclo for  venga eseguito tre volte con k=0, 1, 2</blockquote><div><br></div></div><div>Nel tuo caso avrai:<br><font face="courier new,monospace">se len(self.ArrCharData)</font> == 0 <font face="courier new,monospace">allora avrai range(0, -1) cioè []</font><br>

<font face="courier new,monospace">se len(self.ArrCharData)</font> == 1 <font face="courier new,monospace">allora avrai range(0, 0) cioè []</font><br><font face="courier new,monospace">se len(self.ArrCharData)</font> == 2 <font face="courier new,monospace">allora avrai range(0, 1) cioè [0]</font><br>

<font face="courier new,monospace">se len(self.ArrCharData)</font> == 3 <font face="courier new,monospace">allora avrai range(0, 2) cioè [0, 1]<br><br></font></div><div><font face="courier new,monospace"><span style="font-family:arial,helvetica,sans-serif">se vuoi evitare che il ciclo venga eseguito per</span> </font><font face="courier new,monospace">len(self.ArrCharData) <font face="arial,helvetica,sans-serif">uguale a 0 o a 1, allora ti consiglio di mettere prima del ciclo queste due righe di codice:<br>

<br></font></font></div><div><font face="courier new,monospace"><font face="arial,helvetica,sans-serif"><font face="courier new,monospace">if len(self.ArrCharData) < 2:<br></font></font></font><div style="margin-left:40px">

<font face="courier new,monospace">continue<br></font></div><br></div><div>Altro piccolo consiglio, quando ti serve un contatore usa <span style="font-family:courier new,monospace">xrange()</span> al posto di <span style="font-family:courier new,monospace">range()</span>, 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:<br>

<span style="font-family:courier new,monospace">range(n) </span>-> [0, 1, ...., n-1]<br></div></div></div>
<br>_______________________________________________<br>
Python mailing list<br>
<a href="mailto:Python@lists.python.it">Python@lists.python.it</a><br>
<a href="http://lists.python.it/mailman/listinfo/python" target="_blank">http://lists.python.it/mailman/listinfo/python</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>Daniele San Giovanni
</div>