So I am following a Python for Data Science Course on Coursera. I have linked this in case anyone is interested.
They have a Jupyter Notebook to follow along, but I prefer to code in Notepad++ ("NPP") and write it all from scratch as it helps me learn better.
The following code I have literally copy and pasted into NPP
import csv
with open('mpg.csv') as csvfile:
mpg = list(csv.DictReader(csvfile))
print(mpg[:3])
But when I try to run the file, I am getting the following AttributeError
AttributeError: module 'csv' has no attribute 'DictReader'
I am not entirely sure why as I have seen this is indeed a module according to python documentation, and obviously it works on the Jupyter Notebook on Coursera
Something that I thought may be of note is the location in which I saved the 'mpg.csv' file. I have saved it in the same folder (directory?) that the python file is in. But obviously if the location was a problem It wouldn't be throwing out an AttributeError would it?
Thanks in advance for assistance.
The csv. DictReader() returned an OrderedDict type for each row. That's why we used dict() to convert each row to a dictionary. Notice that we have explicitly used the dict() method to create dictionaries inside the for loop.
Close a CSV FileUse the close() function to close an open file.
Did you happen to name your Python file csv.py? Don't do that! :)
You should avoid naming Python files as keywords or classes.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With