另一个class中的实例变量(没有单继承)

Instance variables in another class (no single inheritance)

我想知道如何在classB中使用一个实例变量(classA),这里引用一段正常运行的小代码:

class Node:
   def __init__(self, value):
      self.value = value
      self.next = None
 
class Stack:
   def __init__(self):
      self.head = Node("head")
      self.size = 0
   def __str__(self):
      cur = self.head.next
      out = ""
      while cur:
         out += str(cur.value) + "->"
         cur = cur.next
      return out[:-3] 

我想知道如何在 class Stack 中使用实例变量(.next.value)。我认为实例变量(.next.value)只能在Nodeclass中出现和使用。据我所知,我们应该使用单继承,class Stack应该改为class Stack(Node)。 另外,我不明白 while cur 是什么意思。和while True一样吗?

你能帮我解释一下这个问题吗?

Question_1 :如何在 class [=12] 中使用实例变量(.next.value) =].我认为实例变量(.next.value)只能在Nodeclass中出现和使用。据我所知,我们应该使用单继承并且 class Stack 应该更改为 class Stack(Node)?

Answer_1 : 在 def ___init__ 中我们创建 Node 的变量然后我们可以使用 .next.valueself.head 因为这个变量是 Node class.

的实例

Question_2 : 还有,我不明白while cur是什么意思。和while True一样吗?

Answer_2 :对于第一个 Node 我们设置 .next = None 然后当我们有多个节点时我们在节点上 运行 直到获取 Node.next == None 然后 None 分配给 cur 并且当 cur 将是 None.

时我们从 while-loop 退出