input: Write a function to remove all the duplicates from a linked list in Python.
  
  class Node: 
      def __init__(self, data): 
          self.data = data 
          self.next = None 
  
  class LinkedList: 
      def __init__(self): 
          self.head = None
  
      def remove_duplicates(self):
          curr_node = self.head 
          new_list = []
          while curr_node != None: 
              if curr_node.data not in new_list: 
                  new_list.append(curr_node.data) 
              curr_node = curr_node.next
                  
          # creating a linked list from the unique elements of new_list  
          self.head = None
          for i in new_list:
              self.insert_node(i)
      
      def insert_node(self, data): 
          new_node = Node(data) 
          if self.head is None: 
              self.head = new_node 
              return
          last = self.head 
          while (last.next): 
              last = last.next
          last.next =  new_node
  
  list_nodes = [7, 14, 28, 28, 28, 35, 49]
  llist = LinkedList()
  for nodes in list_nodes:
      llist.insert_node(nodes)
  
  llist.remove_duplicates()
  # After removing duplicates, expected output is a linked list with no duplicates
  
  assert llist.head.data == 7
  assert llist.head.next.data == 14
  assert llist.head.next.next.data == 28
  assert llist.head.next.next.next.data == 35
  assert llist.head.next.next.next.next.data == 49
  assert llist.head.next.next.next.next.next == None
output: def remove_duplicates(self):
      curr_node = self.head 
      new_list = []
      while curr_node != None: 
          if curr_node.data not in new_list: 
              new_list.append(curr_node.data) 
          curr_node = curr_node.next
              
      self.head = None
      for i in new_list:
          self.insert_node(i)