了解 Python 类中的"self"



我正在努力理解为反转链表提供的解决方案。特别是,我不明白为什么我们写的最后一行:

self.head=prev

而不是

current=prev

current=self.head

我知道我的推理有缺陷,这就是我来这里寻求帮助的原因。提前谢谢。

class Node: 
# Constructor to initialize the node object 
def __init__(self, data): 
self.data = data 
self.next = None
class LinkedList: 
# Function to initialize head 
def __init__(self): 
self.head = None
def reverse(self): 
prev = None
current = self.head 
while(current is not None): 
next = current.next
current.next = prev 
prev = current 
current = next
self.head = prev 

=不像数学中那样相等,它是赋值/绑定运算符。

因此,在之后

current=self.head
current=prev

current将具有prev的值,并且self.head将与current无关,也不会被修改。

最新更新