\[ \begin{align}\begin{aligned}\newcommand\blank{~\underline{\hspace{1.2cm}}~}\\% Bold symbols (vectors)
\newcommand\bs[1]{\mathbf{#1}}\\% Poor man's siunitx
\newcommand\unit[1]{\mathrm{#1}}
\newcommand\num[1]{#1}
\newcommand\qty[2]{#1~\unit{#2}}\\\newcommand\per{/}
\newcommand\squared{{}^2}
%
% Scale
\newcommand\milli{\unit{m}}
\newcommand\centi{\unit{c}}
\newcommand\kilo{\unit{k}}
\newcommand\mega{\unit{M}}
%
% Angle
\newcommand\radian{\unit{rad}}
\newcommand\degree{\unit{{}^\circ}}
%
% Time
\newcommand\second{\unit{s}}
%
% Distance
\newcommand\meter{\unit{m}}
\newcommand\m{\meter}
\newcommand\inch{\unit{in}}
\newcommand\feet{\unit{ft}}
\newcommand\mile{\unit{mi}}
\newcommand\mi{\mile}
%
% Volume
\newcommand\gallon{\unit{gal}}
%
% Mass
\newcommand\gram{\unit{g}}
\newcommand\g{\gram}
%
% Frequency
\newcommand\hertz{\unit{Hz}}
\newcommand\rpm{\unit{rpm}}
%
% Voltage
\newcommand\volt{\unit{V}}
\newcommand\V{\volt}
\newcommand\millivolt{\milli\volt}
\newcommand\mV{\milli\volt}
\newcommand\kilovolt{\kilo\volt}
\newcommand\kV{\kilo\volt}
%
% Current
\newcommand\ampere{\unit{A}}
\newcommand\A{\ampere}
\newcommand\milliampereA{\milli\ampere}
\newcommand\mA{\milli\ampere}
\newcommand\kiloampereA{\kilo\ampere}
\newcommand\kA{\kilo\ampere}
%
% Resistance
\newcommand\ohm{\Omega}
\newcommand\milliohm{\milli\ohm}
\newcommand\kiloohm{\kilo\ohm} % correct SI spelling
\newcommand\kilohm{\kilo\ohm} % "American" spelling used in siunitx
\newcommand\megaohm{\mega\ohm} % correct SI spelling
\newcommand\megohm{\mega\ohm} % "American" spelling used in siunitx
%
% Inductance
\newcommand\henry{\unit{H}}
\newcommand\H{\henry}
\newcommand\millihenry{\milli\henry}
\newcommand\mH{\milli\henry}
%
% Temperature
\newcommand\celsius{\unit{^{\circ}C}}
\newcommand\C{\unit{\celsius}}
\newcommand\fahrenheit{\unit{^{\circ}F}}
\newcommand\F{\unit{\fahrenheit}}
\newcommand\kelvin{\unit{\K}}
\newcommand\K{\unit{\kelvin}}\\% Power
\newcommand\watt{\unit{W}}
\newcommand\W{\watt}
\newcommand\milliwatt{\milli\watt}
\newcommand\mW{\milli\watt}
\newcommand\kilowatt{\kilo\watt}
\newcommand\kW{\kilo\watt}
%
% Torque
\newcommand\ozin{\unit{oz}\text{-}\unit{in}}
\newcommand\newtonmeter{\unit{N\text{-}m}}\end{aligned}\end{align} \]
Apr 16, 2025 | 195 words | 2 min read
7.2.1. Data Parsing
Instructions
The provided module data.py
contains data on the average annual retail
price of gasoline in the United States from \(1950\) until \(2021\). The data includes
\(4\) values for each year; the year, the real price in dollars per gallon, an
inflation adjustment factor, and the inflation adjusted price in \(2021\) dollars
per gallon. This data is stored as a single list with the values for each year
stored consecutively.
Write a program that imports this data from the provided data.py
module
and parses it to calculate the average retail price of gasoline in each decade.
Hint
Consider using list slicing to extract the necessary data.
The results should be displayed as a formatted table. This program should run
without user input.
Sample Output
Ensure your program’s output matches the provided samples exactly.
This includes all characters, white space, and punctuation. In the
samples, user input is highlighted like
this for clarity, but your program should not highlight user
input in this way.
Sample Output
$ python3 data_parsing_login.py
: Price
Decade : in 2021
: Dollars
-------------------
1950-1959 : $2.919
1960-1969 : $2.714
1970-1979 : $2.826
1980-1989 : $3.099
1990-1999 : $2.103
2000-2009 : $2.944
2010-2019 : $3.358
2020-2029 : $2.654
Deliverables
Save your finished program as data_parsing_login.py
, replacing
login
with your Purdue login. Then submit it along with all the
deliverables listed in
Table 7.1 below.