如何在 Python 中读取 CSV 到数组

CSV(Comma-Separated Values)格式是一种常见的文件格式,通常用于在数据之间进行简单的交换和存储。在Python中读取CSV文件并将其存储到数组中是一个非常常见的任务。本文将介绍在Python中如何读取CSV文件到数组中的方法。

步骤1:导入CSV模块

Python标准库中的csv模块包含了处理CSV文件的工具。 在使用它之前,需要将模块导入到Python脚本中。可以使用Python的import语句导入:

import csv

步骤2:打开CSV文件

使用Python内置的open()函数打开CSV文件。在这个例子中,我们将打开一个名为example.csv的文件:

with open('example.csv') as csv_file:
    csv_reader = csv.reader(csv_file)
    for row in csv_reader:
        print(row)

此代码打开example.csv并将其存储在csv_file变量中。 with语句用于确保执行完代码块后关闭文件。接下来,我们使用csv.reader()函数将CSV文件读取到csv_reader变量中。每行中的数据将被存储在一个列表中。

步骤3:将CSV文件数据存储到数组中

在将CSV数据存储到数组中之前,我们需要创建一个空数组。

data_array = []

接下来,在 for 循环中,我们将每行读取的数据添加到数组中:

with open('example.csv') as csv_file:
    csv_reader = csv.reader(csv_file)
    for row in csv_reader:
        data_array.append(row)

步骤4:防止读取CSV文件的头部

默认情况下,csv.reader()函数会将文件中的第一行视为文件头部。将文件头部添加到数组中可能会干扰后续代码。要防止将文件头部添加到数组中,可以将函数参数skiprows设置为1:

with open('example.csv') as csv_file:
    csv_reader = csv.reader(csv_file, skiprows=1)
    for row in csv_reader:
        data_array.append(row)

这将跳过CSV文件的第一行,直接从第二行读取数据。

注意事项:

  1. 读取的CSV文件必须存在。在Python中,文件路径可以是绝对路径或相对路径。相对路径是相对于当前工作目录的路径。
  2. CSV文件可能包含不同数量的列或缺少数据。在将数据存储到数组中之前,请确保数据格式正确,否则可能会导致错误。
  3. 与其他文件类型相比,CSV文件的大小可能会较大。在读取大型CSV文件时,使用Python内置的pandas模块可能更为高效。

总结

在Python中读取CSV文件并将其存储到数组中是一项重要的任务。导入csv模块并使用csv.reader()函数可以轻松地完成该任务。在读取CSV文件时,记得考虑文件大小和格式的问题,并根据需要采取适当的预防措施。