簡體   English   中英

“ TypeError:'int'對象不支持項目分配”; 迭代問題

[英]“TypeError: 'int' object does not support item assignment”; iteration issue

def create_board():
    b = [[['',''] for i in range(8)] for j in range(8)]
    return b
game_board = create_board()


for i in game_board[0]:
    for idx, val in enumerate(i[1::2]):
        idx[0] = 0
        idx[1] = 0
print game_board

我有這個腳本,我需要在其中循環訪問列表game_board中的第一個列表。 從第二個元素開始,我需要更改每個其他元素的列表中的值。 但是,當我運行此命令時,會遇到錯誤

idx[0] = 0
TypeError: 'int' object does not support item assignment

如果IDLE抱怨我將一個變量分配給str,那是可以理解的(這將是遍歷值而不是索引的問題),但是考慮到我沒有整數,我不明白為什么會發生此問題。

idx只是一個像0的整數,沒有這樣的東西0[0]

您想使用val,這是您列表中的商品。

實際上看起來您還有其他問題...

固定

for row in game_board:
    for item in row:
        item[0] = 0
        item[1] = 0

enumerate()函數返回一個元組,該元組是(整數,對象)- 有關enumerate的信息,請參見python文檔

您試圖索引一個整數,但不能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM