Skip to main content
Practice

CSV File Parsing

CSV (Comma-Separated Values) files are commonly used for storing tabular data — like spreadsheets.

Python’s built-in csv module makes it easy to read from and write to CSV files.


1. Reading a CSV File

Use csv.reader() to access rows from a CSV file.

import csv

with open("people.csv", newline="") as file:
reader = csv.reader(file)
for row in reader:
print(row)

Explanation:

  • Each row is a list of values (split by commas).
  • newline="" avoids issues with extra blank lines on Windows.

2. Writing to a CSV File

Use csv.writer() to create and write rows into a CSV file.

import csv

with open("new_people.csv", "w", newline="") as file:
writer = csv.writer(file)
writer.writerow(["Name", "Age"])
writer.writerow(["Alice", 28])
writer.writerow(["Bob", 34])

Explanation:

  • writerow() writes a list as one row in the file.
  • First row usually contains headers.

3. Reading as Dictionaries

csv.DictReader() reads each row as a dictionary — good for working with named columns.

import csv

with open("people.csv", newline="") as file:
reader = csv.DictReader(file)
for row in reader:
print(row["Name"], "is", row["Age"], "years old.")

Explanation:

  • You can access columns by their header names like "Name" and "Age".

Summary

FunctionDescription
csv.reader()Reads CSV rows as lists
csv.writer()Writes rows to a CSV file
csv.DictReader()Reads rows as dictionaries

What’s Next?

Next, you’ll explore how to use Python's built-in modules like math, random, and datetime to enhance your programs.