You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何遍历pandas DataFrame每行生成对象并存储到列表

实现方案

完整可运行代码

你需要先定义Student类,再遍历DataFrame行生成实例存入列表,完整代码如下:

import pandas as pd

# 定义Student类,属性和你读取的DataFrame列对应
class Student:
    def __init__(self, firstname, lastname, status, gpa):
        self.firstname = firstname
        self.lastname = lastname
        self.status = status
        self.gpa = gpa

students = []
# pd.read_csv返回结果本身就是DataFrame,无需二次转换
df = pd.read_csv('students.txt')

# 遍历方法1:iterrows,逻辑直观适合小数据量
for index, row in df.iterrows():
    # 用每行数据创建Student对象
    stu = Student(
        firstname = row['firstname'],
        lastname = row['lastname'],
        status = row['status'],
        gpa = row['gpa']
    )
    # 添加到列表
    students.append(stu)

# 测试验证:输出第一个学生的信息
print(students[0].firstname, students[0].lastname, students[0].gpa)

高效遍历优化(数据量超过1000行推荐)

iterrows遍历性能较差,数据量较大时可以用itertuples替代,遍历逻辑替换为以下代码即可:

for row in df.itertuples(index=False):
    stu = Student(
        firstname = row.firstname,
        lastname = row.lastname,
        status = row.status,
        gpa = row.gpa
    )
    students.append(stu)

内容的提问来源于stack exchange,提问作者riven

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 09:24:03