欢迎访问宙启技术站
智能推送

Python函数读取CSV文件

发布时间:2023-05-21 21:41:19

CSV(Comma Separated Values)文件是一种常见的数据存储格式,其每一行数据用逗号分隔,每个数据项用特定分隔符分割。Python中有很多读取CSV文件的方法,本文将对其中一种方法进行介绍。

1. csv模块

Python中提供了csv模块,通过使用该模块,可以准确、高效地读取CSV文件。csv模块中包含两个重要类,分别是csv.reader和csv.writer。

csv.reader是用来读取CSV文件的类,通过使用该类,可以把CSV文件读取为Python列表类型,其中每个列表元素都是CSV文件中的一行数据。而csv.writer则是用来写入CSV文件的类,可以通过它来写入CSV文件。

2. csv.reader方法读取CSV文件

在Python中使用csv.reader方法读取CSV文件时,需要先引入csv模块,示例代码如下:

import csv

with open('csvfile.csv', 'r') as csvfile:

    csvreader = csv.reader(csvfile)

在这段代码中,我们首先使用了Python内置的with语句,来打开CSV文件,并将其赋值给csvfile变量。接着,我们使用csv.reader方法,将csvfile变量转换为reader对象,其中包含了对CSV文件的读取方式。

接下来,我们可以通过for循环来遍历CSV文件中的每一行数据:

import csv

with open('csvfile.csv', 'r') as csvfile:

    csvreader = csv.reader(csvfile)

    for row in csvreader:

        print(row)

在这段代码中,我们使用for循环来遍历csvreader对象,也就是CSV文件中的每一行数据。对于每一行数据,我们都将其打印输出。

注意:在读取CSV文件时,默认情况下分隔符是逗号(,),如果CSV文件中的分隔符是其它字符(比如分号),需要使用delimiter参数来指定。

3. csv.writer方法写入CSV文件

如果我们需要将Python列表中的数据写入到CSV文件中,可以使用csv.writer方法。示例代码如下:

import csv

with open('csvfile.csv', 'w', newline='') as csvfile:

    csvwriter = csv.writer(csvfile)

    csvwriter.writerow(['Name', 'Age', 'Gender'])

    csvwriter.writerow(['John', '25', 'Male'])

    csvwriter.writerow(['Sara', '32', 'Female'])

    csvwriter.writerow(['Tom', '42', 'Male'])

在这段代码中,我们使用了with语句来打开CSV文件,并将其赋值给csvfile变量。接着,我们使用csv.writer方法将csvfile变量转换为writer对象,其中包含了对CSV文件的写入方式。

我们可以使用writerow方法来将列表数据写入到CSV文件中。该方法的参数必须是一个列表类型,其中包含了需要写入CSV文件的数据。

需要注意的是,在写入CSV文件时,可以通过newline=''参数来指定换行符的类型。如果该参数不设置,则可能会导致在Windows下读取CSV文件时出现问题。

综上所述,使用Python的csv模块可以轻松地读取和写入CSV文件,从而方便地处理和分析大量数据。