Advertisement
roman_gemini

Immutable List

Jan 21st, 2016
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.45 KB | None | 0 0
  1. class IList:
  2.     def __init__(self):
  3.         self.item = None
  4.         self.next = None
  5.  
  6.     def __add__(self, item):
  7.         new_item = IList()
  8.         new_item.item = item
  9.         new_item.next = self
  10.         return new_item
  11.  
  12.     def __getitem__(self, index):
  13.         if index == 0:
  14.             return self.item
  15.         else:
  16.             return self.next[index - 1]
  17.  
  18.  
  19. Nil = IList()
  20.  
  21. my_list = Nil + 1 + 5 + 7 + 15 + 10
  22.  
  23. print(my_list[2])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement