This example uses a data file "ETEE-beer-calories.txt" which contains calorie information for 254 popular beers. The calories are per 12 fluid ounces.
The data file looks like this:
...
Abita Purple Haze,128
Abita Restoration,167
Abita Turbodog,168
Amstel Light,99
Anchor Porter,209
...
Let's write a program to search for a beer by name and retrieve the number of calories in 12 ounces.
Example Run:
Enter a beer name: Stella
Searching for Stella...
Stella Artois has 154 calories per 12oz.
In [2]:
filename = "ETEE-beer-calories.txt"
try:
with open (filename,"r") as f:
beer = input("Enter a beer name: ").title()
print("Searching for %s..." % (beer))
for line in f.readlines():
if beer in line:
beer_name = line.split(',')[0]
calories = int(line.split(',')[1])
print("%s has %d calories per 12oz." % (beer_name, calories))
break
else:
print("I could not find %s" % (beer))
except FileNotFoundError:
print("Could not find data file '%s'" % (filename))
In [ ]: