2014-06-25 1 views
-2

J'ai besoin d'aide avec ceci:TypeError: objet « int » est pas itérable (codeur début)

structureRegion = box 
blocks = 0 
for x in xrange(structureRegion.minx,structureRegion.maxx): 
    for y in xrange(structureRegion.miny,structureRegion.maxy): 
     for z in xrange(structureRegion.minz,structureRegion.maxz): 
      if blockAt(x, y, z, level) != 0 or air: 
       blocks = blocks + 1 
for block in blocks: 
    for x in xrange(structureRegion.minx,structureRegion.maxx): 
     for y in xrange(structureRegion.miny,structureRegion.maxy): 
      for z in xrange(structureRegion.minz,structureRegion.maxz): 
       coords2 = [] 
       coords2.append((x,y,z)) 
       part1 = ''.join(coords) 
       part2 = ''.join(coords2) 

Quand je ne l'utilise, je reçois l'erreur ci-dessus dans le titre. Je voulais juste parcourir chaque bloc jusqu'à ce qu'il n'y en ait plus et répéter le code.

Merci

(Ceci est pour Minecraft et un filtre mcedit par la voie)

Répondre

0
[...] 
for block in xrange(blocks): 
[...] 

plus courte (et avec d'autres erreurs fixes):

coords2 = [] 

for x in xrange(box.minx,box.maxx): 
    for y in xrange(box.miny,box.maxy): 
     for z in xrange(box.minz,box.maxz): 
      if blockAt(x, y, z, level) != 0: 
       coords2.append((x,y,z)) 

part1 = ''.join(coords) 
part2 = ''.join(coords2) 
1

blocks est un entier, mais la ligne for block in blocks: essaie de le traiter comme si ce iterable (une liste, ensemble, tuple, etc.), ce qui n'est pas le cas, d'où l'erreur.

Questions connexes