如何在不使用外部库(例如 Numpy、Pandas)的情况下读取 CSV 文件?

Mos*_*ddy 4 python csv excel dataframe pandas

这是面试中经常出现的问题。

我知道如何使用 .csv 文件读取 csv 文件Pandas

但是,我正在努力寻找一种无需使用外部库即可读取文件的方法。

Python 是否带有任何有助于读取 csv 文件的模块?

Ree*_*ner 13

您很可能需要一个库来读取 CSV 文件。虽然您可以自己打开和解析数据,但这将是乏味和耗时的。幸运的是,python 带有一个标准csv模块,您无需 pip 安装!你可以像这样阅读你的文件:

import csv

with open('file.csv', 'r') as file:
    my_reader = csv.reader(file, delimiter=',')
    for row in my_reader:
        print(row)
Run Code Online (Sandbox Code Playgroud)

这将向您显示每个row都作为列表被读入。然后您可以根据索引对其进行处理!还有其他读取数据的方法,如https://docs.python.org/3/library/csv.html 中所述,其中一种方法将创建字典而不是列表!

更新

你为我截取的项目链接了你的 github

product_id,product_name,aisle_id,department_id
9327,Garlic Powder,104,13
17461,Air Chilled Organic Boneless Skinless Chicken Breasts,35,12
17668,Unsweetened Chocolate Almond Breeze Almond Milk,91,16
28985,Michigan Organic Kale,83,4
32665,Organic Ezekiel 49 Bread Cinnamon Raisin,112,3
33120,Organic Egg Whites,86,16
45918,Coconut Butter,19,13
46667,Organic Ginger Root,83,4
46842,Plain Pre-Sliced Bagels,93,3
Run Code Online (Sandbox Code Playgroud)

将其另存为file.csv并使用我发布的上述代码运行它。结果:

['product_id', 'product_name', 'aisle_id', 'department_id']
['9327', 'Garlic Powder', '104', '13']
['17461', 'Air Chilled Organic Boneless Skinless Chicken Breasts', '35', '12']
['17668', 'Unsweetened Chocolate Almond Breeze Almond Milk', '91', '16']
['28985', 'Michigan Organic Kale', '83', '4']
['32665', 'Organic Ezekiel 49 Bread Cinnamon Raisin', '112', '3']
['33120', 'Organic Egg Whites', '86', '16']
['45918', 'Coconut Butter', '19', '13']
['46667', 'Organic Ginger Root', '83', '4']
['46842', 'Plain Pre-Sliced Bagels', '93', '3']
Run Code Online (Sandbox Code Playgroud)

这可以满足您在问题中的要求。我不会为你做你的项目,你应该可以从这里开始工作。