Last Updated on March 30, 2023 by mishou
Work in progress.
I. What shall we learn?
If you are new to Dictionaries and Classes in Python, comparing Data Frames, Classes, and Dictionaries will help you understand Dictionaries and Classes better. Let’s create a data frame, a class, and a dictionary from the same sample data set. This is what I mean:

All the scripts are here:
https://colab.research.google.com/drive/1MCx1RiNc_oco2c1RApXWHtplcL9J9eJo?usp=sharing
II. Sample data set
The sample data set created with Faker:

III. Using Pandas

IV. Using Class
You can define a class with clean and simple codes using Data Classes. You can learn Data Classes from the following post:
Why you should start using Python Dataclasses
# import a library
from dataclasses import dataclass
@dataclass
class Student:
number: int
name: str
english: int
mathematics: int
Unpack the data, create a class, instantiate objects with them and create a list of objects:
# create a list of objects
import csv
student_list = []
with open('exam.csv', newline='') as csv_file:
reader = csv.reader(csv_file)
next(reader, None) # skip the header
# unpack the file
for num, number, name, english, mathematics in reader:
# convert the numbers to ints
number = int(number)
english = int(english)
mathematics = int(mathematics)
# create Student instances and append them to a list
student_list.append(Student(number, name, english, mathematics))

V. Using Dictionary
