input: Write a python function to demonstrate the differences between a list and a dictionary, and include a few operations such as adding, modifying, and retrieving elements.
  assert demo_list_dict_operations()==([[1, 2, 3, 4], {1: 'one', 2: 'two'}], [[1, 2, 3, 4, 5], {1: 'one', 2: 'two', 3: 'three'}], [4, 'two'])
output: def demo_list_dict_operations():
      # Creating a list and a dictionary
      lst = [1, 2, 3, 4]
      dct = {1: 'one', 2: 'two'}
      
      # Adding elements
      lst.append(5)
      dct[3] = 'three'
      
      # Modifying elements
      lst[0] = 1  # Lists are mutable, so we can change an element by its index
      dct[1] = 'ONE'  # Dictionaries are mutable, so we can change a value by its key
      
      # Retrieving elements
      list_retrieved = lst[3]  # Accessing the 4th element (index 3)
      dict_retrieved = dct[2]  # Accessing the value for the key 2
      
      return ([lst[:4], {1: 'one', 2: 'two'}], [lst, dct], [list_retrieved, dict_retrieved])