Я здесь новый, но я думал, что кто-то может помочь мне с чем-то, над чем я работал некоторое время.Объект типа 'int' не имеет len
Таким образом, я работал над повторной выемкой рыбы на исходном тексте Toontown Fellowship, но через некоторое время я оказался с ошибкой. Код предоставляется вместе с изображением Traceback.
for genus, speciesList in __fishDict.items():
for species in range(len(speciesList)):
__totalNumFish += 1
speciesDesc = speciesList[species]
rarity = speciesDesc[RARITY_INDEX]
zoneList = speciesDesc[ZONE_LIST_INDEX]
for zoneIndex in range(len(zoneList)):
zone = zoneList[zoneIndex]
effectiveRarity = getEffectiveRarity(rarity, zoneIndex)
if zone == Anywhere:
for rodIndex, rarityDict in __anywhereDict.items():
if canBeCaughtByRod(genus, species, rodIndex):
fishList = rarityDict.setdefault(effectiveRarity, [])
fishList.append((genus, species))
И Traceback происходит на линии 785 Object of type int has no len
Любая помощь с корректировкой это было бы весьма признателен! (Ах да, и это произошло, когда я пытался добавить новый род к списку рыбы.)
Линия 785 не означает для нас особого значения. – keyser
Подсказка: добавьте 'print (type (zoneList), repr (zoneList))' прямо перед циклом 'for'. – DSM
Поскольку 'speciesList' и' zoneList' имеют 'List' в своих именах, я думаю, что это должны быть списки, которых они не являются, очевидно. Предполагая это, я думаю, что использование 'len()' верное, но вы должны проверить, откуда эти переменные, поскольку это 'int', а не 'list'. – albert