簡體   English   中英

為什么列表列表中的所有索引均為0?

[英]Why all are indexes in my list of lists 0?

我想要一個帶有卡片組和卡片的抽認卡軟件。 我創建了一個通用列表all_decks。 我為甲板創建了一個類:

 class deck(list): 
    def __init__(self, name):
            self.name = name
    def open_deck(self):
            print "This is your deck %s: " %(self.name)
            print "This deck has %s cards." %(len(self)) 
            return self

然后使用用戶輸入的名稱創建平台,並將其附加到all_decks。 這是打印它們的功能:

def print_decks():                                                      
    print "You have %s decks: " %(len(all_decks))
    for x in all_decks:
            print all_decks.index(x), x.name

這確實會打印所有卡片組的列表,但是所有索引看起來都是0。為什么? 我還以為我會為“開放式甲板”和“刪除甲板”功能使用索引,但是它不起作用。

您誤解了index()作用。 它返回列表中與目標匹配的第一個元素的索引。 但是您從未定義過一種比較牌組的方法。

您真的不想在這里使用索引。 相反,請使用enumerate

for i, x in enumerate(all_decks):
        print i, x.name

暫無
暫無

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

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