Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么我的列表0中的所有索引都是0?_Python_List_Indexing - Fatal编程技术网

Python 为什么我的列表0中的所有索引都是0?

Python 为什么我的列表0中的所有索引都是0?,python,list,indexing,Python,List,Indexing,我想要一个有卡片组和卡片的抽认卡软件。我创建了一个所有甲板的通用列表。我为甲板创建了一个类: 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."

我想要一个有卡片组和卡片的抽认卡软件。我创建了一个所有甲板的通用列表。我为甲板创建了一个类:

 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
然后使用用户输入的名称创建组,并将其附加到所有组中。这是打印它们的功能:

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

这会打印所有组的列表,但所有索引都显示为0。为什么?我还以为我会为“open-deck”和“delete-deck”函数使用索引,但它不起作用

您误解了
index()
的功能。它返回列表中与目标匹配的第一个元素的索引。但你从未定义过一种比较甲板的方法

你不想在这里使用索引。相反,使用
枚举
保持计数:

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

您误解了
index()
的作用。它返回列表中与目标匹配的第一个元素的索引。但你从未定义过一种比较甲板的方法

你不想在这里使用索引。相反,使用
枚举
保持计数:

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

您从未显示过在哪里创建
所有组
。您从未显示过在哪里创建
所有组