C'est vraiment étrange, jetez un coup d'œil au code ci-dessous, lorsque je supprime num=i
Tout fonctionne bien, mais avec lui, il y a un problème d'itération.
Code d'erreur
In [17]: prim_list=[]
...: for i in range(2,101):
...: print i
...: num=i,count=0 # line with issue
...: for j in range(1,i/2):
...: div=j
...: if(num%div==0):
...: count=count+1
...: if(count==1):
...: prim_list.append(num)
...:
2
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-17-a8dd2a52322e> in <module>()
2 for i in range(2,101):
3 print i
----> 4 num=i,count=0
5 for j in range(1,i/2):
6 div=j
TypeError: 'int' object is not iterable
Fonctionne bien
In [19]: prim_list=[]
...: for i in range(2,101):
...: count=0 # notice num=i assignment is removed
...: for j in range(1,i/2):
...: div=j
...: if(num%div==0):
...: count=count+1
...: if(count==1):
...: prim_list.append(num)
...: print "done"
...:
done
Ce que je ne comprends pas, c'est pourquoi l'affectation provoque l'erreur d'itération de la boucle !!!?
Toute aide est appréciée !