Question Answered step-by-step This programming project is designed to cover all the skills… This programming project is designed to cover all the skills learned in BIS 628, Application Development. Skills CoveredDemonstration of the following skills are part of this project:write a Python programming solution in a Jupyter Notebook. (10)Properly commenting code for readability. (15)Choosing, naming, and initializing appropriate variables to store data items. (10)write calculation statements to manipulate data. (10)Making decisions in the program using if/elif/else blocks. (10)Using Try/Except/Else/Finally blocks to handle errors. (10)Creating a list and/or tuple to store and sort iterable data items. (10)Creating a dictionary to store and manipulate key/value pairs. (10)Looping through a string, list, tuple, or dictionary using for blocks. (20)Creating function procedures to modularize and reduce redundant code. (10)Reading and saving data in files. (10)Creating class definitions, with properties and methods, and instantiating them as objects. (15)Overriding an inherited method in a derived class. (10)Exam CoverageThere will be questions on the Final Exam that cover what you learned in this assignment.Program FormatThe program must be submitted as a Jupyter Notebook (.ipynb), with a description of what the program does, and comments in each major block describing what the block does.Instructions a Jupyter Notebook named SolarSystem.In the first cell of the notebook, add comments with the application name, your name, and the class (BIS 628). As you complete this project, be sure to add comments to each method or block of code to explain what it does.Create a class named Planet, with the following attributes. Make sure to create accessor and mutator functions for each attribute.Planet name, as a text stringPlanet type, as a text string (Terrestrial or Jovian)Average distance from the Sun, as a float number. This will be expressed in Astronomical Units (AU), where 1 AU = distance from the Earth to the Sun.Mass, as a float number. This will be expressed in kilograms, in scientific notation. 2 derived classes that inherit the Planet class, named TerrestrialPlanet and JovianPlanet. Create the following attributes:For a TerrestrialPlanet:Low surface temperature, as an integer. This will be expressed in degrees Celsius.High surface temperature, as an integer. This will be expressed in degrees Celsius.For a JovianPlanet:Temperature above cloud tops, as an integer. This will be expressed in degrees Celsius.In the main() program, write a function to convert AU to millions of miles. There are 93 million miles per AU. So, distance in millions of miles = distance in AU * 93.Use an input() statement to ask the user for the file name that contains the planet information. Open the data file for reading.Use an appropriate loop structure to read the data about each planet into either TerrestrialPlanet or JovianPlanet instances. When adding each instance, make sure to set the Planet type as either Jovian or Terrestrial. Make sure to use a Try/Except block to catch any errors when reading the data file. Each Planet will have the 7 data items given in #4, one per line. Example:EarthTerrestrial1.05.967E24-50500 Note: a planet will either have values for the low/high temperature, or temperature above the cloud tops. The unused temperatures will be set to zero. Terrestrial planets will have surface temperatures, while Jovian planets will have cloud top temperatures, and the other items will be 0. You can skip any data items that do not apply to the type of planet you are creating but make sure you read 7 lines per planet. There may be more or less than 9 planets! When the file has been completely read, make sure you close the file.Sort the List by distance from the Sun, in ascending order. The raw data file may not be in the correct order. (Hint: create a dictionary of the Planet objects, with the Distance from Sun as the key. Then, make a list of the keys and sort them in ascending order. Finally, use the sorted list of keys to print out each object in the sorted order.) __str__ method for Planet to print out the following information for each Planet. Use the following formatting to write the data:Planet name: {Planet name}Planet Type: {Planet type}Distance from Sun (AU): {Distance} – express with 2 digits behind the decimal pointMass (kg): {Mass} – express in scientific notation(Leave a blank line between each planet.)10. Write an override __str__ method in the Jovian Planet class, to print out:Temperature above cloud tops (degrees C): {Temperature above cloud tops}{Leave a blank line between each planet}11. an override __str__ method in the Terrestrial Planet class, to print out:Surface Temperature (degrees C): {Low temperature} to {High temperature}{Leave a blank line between each planet}12. For each planet, write a line that indicates how far that planet is from the Sun, in millions of miles, using the function you wrote in #5. Format your distance output with 2 digits after the decimal point. The output of the program should look like this:Planet name: MercuryPlanet Type: TerrestrialDistance from Sun (AU): 0.39Mass (kg): 3.31e+23Surface Temperature (degrees C): -173 to 430 Planet name: VenusPlanet Type: TerrestrialDistance from Sun (AU): 0.72Mass (kg): 4.87e+24Surface Temperature (degrees C): 472 to 472 Planet name: EarthPlanet Type: TerrestrialDistance from Sun (AU): 1.00Mass (kg): 5.967e+24Surface Temperature (degrees C): -50 to 50 Planet name: MarsPlanet Type: TerrestrialDistance from Sun (AU): 1.52Mass (kg): 6.424e+23Surface Temperature (degrees C): -140 to 20 Planet name: JupiterPlanet Type: JovianDistance from Sun (AU): 5.20Mass (kg): 1.899e+27Temperature above cloud tops (degrees C): -110 Planet name: SaturnPlanet Type: JovianDistance from Sun (AU): 9.54Mass (kg): 5.69e+26Temperature above cloud tops (degrees C): -180 Planet name: UranusPlanet Type: JovianDistance from Sun (AU): 19.18Mass (kg): 8.69e+25Temperature above cloud tops (degrees C): -220 Planet name: NeptunePlanet Type: JovianDistance from Sun (AU): 30.06Mass (kg): 1.03e+26Temperature above cloud tops (degrees C): -216 Planet name: PlutoPlanet Type: TerrestrialDistance from Sun (AU): 39.44Mass (kg): 1.2e+22Surface Temperature (degrees C): -230 to -230 Mercury is 35.99 million miles from the Sun. Venus is 67.27 million miles from the Sun. Earth is 93.00 million miles from the Sun. Mars is 141.70 million miles from the Sun. Jupiter is 483.86 million miles from the Sun. Saturn is 887.11 million miles from the Sun. Uranus is 1,783.74 million miles from the Sun. Neptune is 2,795.68 million miles from the Sun. Pluto is 3,667.92 million miles from the Sun. hi, I want clean code and output for the last program the program is not working here is the planet data that .text file data NeptuneJovian30.06111.03E2600-216EarthTerrestrial1.05.967E24-50500MercuryTerrestrial0.3873.31E23-1734300JupiterJovian5.20281.899E2700-110VenusTerrestrial0.72334.87E244724720PlutoTerrestrial39.441.2E22-230-2300MarsTerrestrial1.52376.424E23-140200SaturnJovian9.53885.69E2600-180UranusJovian19.188.69E2500-220 Computer Science Engineering & Technology Python Programming BIS 228 Share QuestionEmailCopy link Comments (0)