首页 > 解决方案 > 检查元素是否在链表中

问题描述

我正在尝试实现一种方法,该方法返回特定索引处的节点索引。当元素存在时,我可以成功检索索引;但是,当我没有收到错误“NoneType”对象没有属性“数据”时,我不太明白为什么会发生这种情况。这是我的链表和节点类

class Node:
    def __init__(self,data = None,next = None):
        self.data = data
        self.next = next
class Listy:
    def __init__(self):
        self.head = None

这是我的 get_index 函数

    def get_index(self,key):
        temp = self.head
        count = 0
        while temp.data != key:
            temp = temp.next
            count += 1
        print(count)

谢谢您的帮助

标签: pythonlinked-list

解决方案


你得到一个错误,因为你试图在while循环中获取'temp'的属性'data',但你的'temp'是'None',因为你将它分配给'self.head'实际上是'None'空列表。我希望这是有道理的


推荐阅读