簡體   English   中英

For循環中的Python 2D列表

[英]Python 2D Lists in For Loops

我建立了一個2D列表(我仍然想將其稱為數組)來保存有關貨幣令牌的信息,例如:

Token = [["P",0,.01,"Penny"],["N",0,.05,"Nickel"],["D",0,.10,"Dime"],["Q",0,.25,"Quarter"]]

當我嘗試使用以下代碼讀取令牌的值時:

for i in Token:
    print (Token[i][3])

我得到一個錯誤:

TypeError: list indices must be integers or slices, not list

我不確定我是否理解該錯誤,並且在網上搜索解決方案還沒有成功。 您能提供的任何幫助將不勝感激。

如果有幫助, 整個項目的代碼都在GitHub上

您正在使用for-each循環,在Python中,該循環將為您提供列表中的項目,而不是索引。 另外,您正在使用一組集合,這是無效的語法。 因此,保留一個列表列表並僅使用一個索引:

Token =  [["P",0,.01,"Penny"],["N",0,.05,"Nickel"],["D",0,.10,"Dime"],["Q",0,.25,"Quarter"]]

for i in Token:
   print(i[3])

對於通過Token進行的每次迭代,您將獲得與i項。 因此,在您的第一次迭代中:

for i in Token:

i = [“ P”,0,.01,“ Penny”]

做就是了:

for i in Token:
    print i[3]

暫無
暫無

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

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