The following code, written in Python, creates a simple CSV file. Then reads this data into Dictionary and outputs it as formatted string.
# =============================================================================
# We're working with a list of flowers and some information about each one.
# The create_file function writes this information to a CSV file.
# The contents_of_file function reads this file into dictionary and returns
# the information in a nicely formatted block.
# =============================================================================
import os
import csv
# Create a file with data in it
def create_file(filename):
with open(filename, "w") as file:
file.write("name,color,type\n")
file.write("carnation,pink,annual\n")
file.write("daffodil,yellow,perennial\n")
file.write("iris,blue,perennial\n")
file.write("poinsettia,red,perennial\n")
file.write("sunflower,yellow,annual\n")
# Read the file contents and format the information about each row
def contents_of_file(filename):
return_string = ""
# Call the function to create the file
create_file(filename)
# Open the file
with open(filename) as f:
# Read the rows of the file into a dictionary
reader = csv.DictReader(f)
# Process each item of the dictionary
for row in reader:
return_string += "a {} {} is {}\n".format(row["color"], row["name"], row["type"])
return return_string
#Call the function
print(contents_of_file("flowers.csv"))
# Detele CSV file previously created
os.remove("flowers.csv")