Reading CSV files in Python

03 Dec, 2021
A CSV (Comma Separated Values) file is a form of plain text document which uses a particular format to organize tabular information. CSV file format is a bounded text document that uses a comma to distinguish the values. Every row in the document is a data log. Each log is composed of one or more fields, divided by commas. It is the most popular file format for importing and exporting spreadsheets and databases. 
There are various ways to read a CSV file that uses either the CSV module or the pandas library. 
csv Module: The CSV module is one of the modules in Python which provides classes for reading and writing tabular information in CSV file format.
pandas Library: The pandas library is one of the open-source Python libraries that provide high-performance, convenient data structures and data analysis tools and techniques for Python programming.  
Reading a CSV File Format in Python:Consider the below CSV file named ‘Giants.CSV’: 
 
USing csv.reader(): At first, the CSV file is opened using the open() method in ‘r’ mode(specifies read mode while opening a file) which returns the file object then it is read by using the reader() method of CSV module that returns the reader object that iterates throughout the lines in the specified CSV document.Note: The ‘with’ keyword is used along with the open() method as it simplifies exception handling and automatically closes the CSV file.
Python3
import csv # opening the CSV filewith open('Giants.csv', mode ='r')as file:     # reading the CSV file  csvFile = csv.reader(file)   # displaying the contents of the CSV file  for lines in csvFile:        print(lines)
Output:
['Organization', 'CEO', 'Established']
['Alphabet', 'Sundar Pichai', '02-Oct-15']
['Microsoft', 'Satya Nadella', '04-Apr-75']
['Amazon', 'Jeff Bezos', '05-Jul-94']
In the above program reader() method is used to read the Giants.csv file which maps the data into lists.
Using csv.DictReader() class: It is similar to the previous method, the CSV file is first opened using the open() method then it is read by using the DictReader class of csv module which works like a regular reader but maps the information in the CSV file into a dictionary. The very first line of the file consists of dictionary keys. 
Python3
import csv # opening the CSV filewith open('Giants.csv', mode ='r') as file:                  # reading the CSV file       csvFile = csv.DictReader(file)        # displaying the contents of the CSV file       for lines in csvFile:            print(lines)
Output:
OrderedDict([(‘Organization’, ‘Alphabet’), (‘CEO’, ‘Sundar Pichai’), (‘Established’, ’02-Oct-15′)]) OrderedDict([(‘Organization’, ‘Microsoft’), (‘CEO’, ‘Satya Nadella’), (‘Established’, ’04-Apr-75′)]) OrderedDict([(‘Organization’, ‘Amazon’), (‘CEO’, ‘Jeff Bezos’), (‘Established’, ’05-Jul-94′)])
Using pandas.read_csv() method: It is very easy and simple to read a CSV file using pandas library functions. Here read_csv() method of pandas library is used to read data from CSV files.
Python3
import pandas # reading the CSV filecsvFile = pandas.read_csv('Giants.csv') # displaying the contents of the CSV fileprint(csvFile)
Output:
Organization            CEO Established
0   Alphabet  Sundar Pichai   02-Oct-15
1   Microsoft  Satya Nadella   04-Apr-75
2   Amazon     Jeff Bezos   05-Jul-94
In the above program, the csv_read() method of pandas library reads the Giants.csv file and maps its data into a 2D list. Note: To know more about pandas.csv_read() click here.
varshagumber28
kk9826225
python-csv
Python
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Read JSON file using Python
Adding new column to existing DataFrame in Pandas
Python map() function
How to get column names in Pandas dataframe
Different ways to create Pandas Dataframe
Enumerate() in Python
Read a file line by line in Python
Python String | replace()
How to Install PIP on Windows ?
Iterate over a list in Python