Python中的self详细解析 - 初识CV的文章 - 知乎 https://zhuanlan.zhihu.com/p/356325860
关于class
leetcode里面给出的class部分是不能删除的,否则会执行出错。
关于class、self部分的内容:https://zhuanlan.zhihu.com/p/356325860
enumerate()函数
enumerate(sequence,[start = 0]) //enumerate(遍历对象,索引起始值)
enumerate()函数是python内置函数,参数为可迭代/可遍历的对象(如:列表,字符串),返回的是对象的索引和值,一般在for循环中使用。
示例:
链表
#链表节点 class ListNode(object): def __init__(self,val=0,next=None): self.val=val #存放当前节点数据 self.next=next #指向下一节点指针
调用class中的method时遇到错误:TypeError: creat() missing 1 required positional argument: 'list'
原因:调用类的时候没有对类进行实例化
比如,对于以下代码
#链表操作 class SinglyLinkedList(object): #创建链表 def creat(self,list): length=len(list) #链表长度为所给的列表长度 if length==0: return None #列表为空时,返回空 head=ListNode(list[0],None) tail=head ##头节点值为list的第一个元素,节点的next为空,只有一个头节点,此时链表尾也为此头节点 for i in range(length-1): #i从0到length-2计数 node=ListNode(list[i+1],None) #利用ListNode创建节点,随循环为列表中的元素逐一创建节点 tail.next=node #当前节点的next指针指向新创建的节点 tail=node #tail指针移向新创建的节点 return head #浏览链表 def scan(self,linkedlist): tail=linkedlist list=[1,2,3,4,5,6,7] while(tail): list.append(tail.val) tail=tail.next return list
调用时:
cl=SinglyLinkedList() #调用类中的函数时一定要先实例化!!!!!!! //实例化 list1 = [1,2,3,4,5,6] cl.creat(list1) #调用类中的method nod=ListNode() cl.scan(nod) #scan()中的参数时节点(因为前面tail=node才出来的)
两数相加
标签:TypeError,creat,list,class,链表,tail,next,节点,两数 From: https://www.cnblogs.com/rxh-321/p/17192482.html