Objects File ============ We consider a textfile with information about some objects marked with different prices. The format of these files is as follows: - The fist line contains the header. - Each of the following lines contains the info about one object and a price found. The same object might appear several times with different colors and prices. Each line has the following infos separated by coma (``','``): - The name (:class:`str`) - The identification number (:class:`int`) - The color (:class:`str`) - The price (:class:`float`) The file :download:`objects14.csv ` is an example: .. literalinclude:: objects14.csv :language: pycon You are required to delivered the following function in the module :mod:`objects_file` (file :file:`objects_file.py`): .. py:function:: read_objects(filename) such that **given** ``filename``, :class:`str`, the name of a textfile of objects with the format described above. **returns** a :class:`dict` with the information in that file with the following format: - Keys: 2-component :class:`tuple` with: - The *name* (:class:`str`). - The *id number* (:class:`int`) of the object. - Values: 3-component :class:`list` with: - The *color* (:class:`str`) which can be any color of the instances of this object. - The *number of instances* (:class:`int`) of that object found in the file (with its same name and id number). - The *average price* (:class:`float`) rounded to 2 decimals. For example the call ``read_objects('objects14.csv')`` over the previous file should produce the following dict: .. literalinclude:: read_objects.test :language: pycon :start-after: --ini-out :end-before: --fi-out Find the doctest file at :download:`read_objects.test `.