TypeError: объект 'int' не повторяется (начинающий кодер)
Мне нужна помощь с этим:
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 ответа
Решение
[...]
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)
blocks
целое число, но строка for block in blocks:
пытается обработать его так, как если бы он был повторяемым (список, множество, кортеж и т. д.), а это не так, поэтому возникает ошибка.