TypeError:' int'对象不可迭代(开始编码器)

时间:2014-06-25 23:48:00

标签: python mcedit

我需要帮助:

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)

当我使用它时,我在标题中收到上述错误。

我只是想通过每个块,直到没有更多并重复代码。

由于

(顺便说一句,这是针对Minecraft和MCEdit过滤器)

2 个答案:

答案 0 :(得分:1)

blocks是一个整数,但是行for block in blocks:试图将它视为iterable(列表,集合,元组等),但它不是,因此错误。

答案 1 :(得分:0)

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

更短(并修正了其他一些错误):

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)