理解 类 中的 "self" for Python

Understanding the "self" in classes for Python

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

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 

= 不像数学中的相等,它是 assignment/binding 运算符。

因此,之后:

current=self.head
current=prev

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