fork download
  1. class Node:
  2.  
  3. def __init__(self, value=None):
  4. self.value = value
  5. self.next = self
  6.  
  7. def Next(self):
  8. return self.next
  9.  
  10. def SetNext(self, node):
  11. self.next = node
  12.  
  13. def Value(self):
  14. return self.value
  15.  
  16. def AddAfter(self, node):
  17. node.SetNext(self.Next())
  18. self.next = node
  19. return node
  20.  
  21. def AddBefore(self, node):
  22. curr = self
  23. while curr.Next() != self:
  24. curr = curr.Next()
  25. curr.AddAfter(node)
  26. return node
  27.  
  28. def __str__(self):
  29. return str(self.value)
  30.  
  31. node = Node()
  32. node1 = node.AddAfter(Node(1))
  33. node2 = node1.AddAfter(Node(2))
  34. node3 = node2.AddBefore(Node(3))
  35.  
  36. print(node.Next(), node.Next().Next(), node.Next().Next().Next())
Success #stdin #stdout 0.02s 9072KB
stdin
Standard input is empty
stdout
1 3 2