📜  在 python 中读取文件 csv(1)

📅  最后修改于: 2023-12-03 15:23:16.674000             🧑  作者: Mango

在 Python 中读取 CSV 文件

介绍

CSV(逗号分隔值)文件是一种常见的电子数据表格格式,它可以用文本编辑器编辑并用电子表格软件打开。在Python中读取CSV文件可以使用Python的内置库csv。

csv模块

CSV文件通常由行和列组成,因此我们可以使用csv模块来处理它们。

读取CSV文件

要读取CSV文件,我们需要使用csv模块中的reader()函数,该函数将CSV文件作为参数,并返回一个可迭代的对象以访问文件中的行。

import csv

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

在上述代码中,我们打开名为file.csv的文件并使用CSV格式的逗号分隔符来创建一个csv_reader对象。我们则可以遍历CSV文件中的每一行。

写入CSV文件

要向CSV文件中写入数据,我们可以使用csv模块中的writer()函数。该函数需要我们提供CSV文件的名称、以及写入数据的字段名称列表。

import csv

header = ['name', 'age', 'email']
data = [
    ['Alice', 25, 'alice@example.com'],
    ['Bob', 30, 'bob@example.com'],
    ['Charlie', 35, 'charlie@example.com'],
    ['David', 40, 'david@example.com']
]

with open('file.csv', 'w', newline='') as csv_file:
    csv_writer = csv.writer(csv_file)
    csv_writer.writerow(header)
    csv_writer.writerows(data)

在上述代码中,我们使用CSV格式的逗号分隔符创建一个csv_writer对象,并使用writerow()或writerows()方法将数据写入CSV文件中。

pandas模块

另一种读取和写入CSV文件的方式是使用pandas模块。pandas是一个开源数据分析和数据操作库,它可以简化CSV文件的读写操作。

读取CSV文件
import pandas as pd

data = pd.read_csv('file.csv')
print(data)

在上述代码中,我们使用read_csv()函数读取file.csv文件,并将数据存储在DataFrame对象中。

写入CSV文件

要将数据写入CSV文件中,我们可以使用DataFrame对象中的to_csv()方法。该方法需要传递要写入文件的文件名。

import pandas as pd

header = ['name', 'age', 'email']
data = [
    ['Alice', 25, 'alice@example.com'],
    ['Bob', 30, 'bob@example.com'],
    ['Charlie', 35, 'charlie@example.com'],
    ['David', 40, 'david@example.com']
]

df = pd.DataFrame(data, columns=header)
df.to_csv('file.csv', index=False)

在上述代码中,我们首先创建一个DataFrame对象,然后使用to_csv()方法将数据写入CSV文件中。

结论

使用csv和pandas模块可以轻松读取和写入CSV文件。这两个模块在Python中提供了强大和灵活的支持,可以大大简化CSV文件的处理过程。