Python Notes Help

CSV

Reading CSV files

The csv module allows for reading CSV files in a simple and efficient manner.

You can read each row as a list or as a dictionary, depending on your needs.

Example of reading as list:

import csv with open('example.csv', 'r') as file: csv_reader = csv.reader(file) for row in csv_reader: print(row)

Output:

['name', 'age', 'city'] ['Daniel', '24', 'Madrid']

Example of reading as dict:

with open('example.csv', 'r') as file: csv_dict_reader = csv.DictReader(file) for row in csv_dict_reader: print(row)

Output:

{'name': 'Daniel', 'age': '24', 'city': 'Madrid'}

Writing to CSV files

You can write data to CSV files by using .writer() for a list or .DictWriter() for dictionaries.

Example of writing as list:

import csv data = [['Name', 'Age', 'City'], ['Daniel', 24, 'Madrid'], ['Álex', 23, 'Gijón']] with open('output.csv', 'w', newline='') as file: csv_writer = csv.writer(file) csv_writer.writerows(data)

Example of writing as dict:

import csv data = [{'Name': 'Daniel', 'Age': 24, 'City': 'Madrid'}, {'Name': 'Álex', 'Age': 23, 'City': 'Gijón'}] with open('output.csv', 'w', newline='') as file: fieldnames = ['Name', 'Age', 'City'] csv_writer = csv.DictWriter(file, fieldnames=fieldnames) csv_writer.writeheader() csv_writer.writerows(data)

Using pandas for CSV

pandas provides powerful functionality for reading, writing, and manipulating CSV data.

It is highly recommended for handling large datasets efficiently.

Must be installed with pip.

Example of writing with pandas:

import pandas as pd data = {'Name': ['Daniel', 'Álex'], 'Age': [24, 23], 'City': ['Madrid', 'Gijón']} df = pd.DataFrame(data) df.to_csv('example.csv', index=False)

Example of reading with pandas:

import pandas as pd df = pd.read_csv('example.csv') print(df)

Output:

# Name Age City 0 Daniel 24 Madrid 1 Álex 23 Gijón
Last modified: 17 March 2025