赞
踩
CSV文件是一种常见的数据存储格式,由逗号分隔的值组成。Python的csv模块提供了读取和写入CSV文件的功能。
以下是一个使用csv模块进行CSV文件操作的代码示例:
- import csv
-
- # 打开CSV文件
- with open('example.csv', 'r') as csvfile:
- # 创建CSV读取器
- reader = csv.reader(csvfile)
-
- # 逐行读取CSV文件内容
- for row in reader:
- # 输出每一行的内容
- print(row)
在上面的代码中,我们首先使用open()
函数打开一个名为example.csv
的CSV文件,并指定模式为'r'
,表示只读模式。然后,我们使用csv.reader()
函数创建一个CSV读取器对象,该对象将用于逐行读取CSV文件的内容。接下来,我们使用一个for
循环逐行读取CSV文件的内容,并使用print()
函数输出每一行的内容。
除了读取CSV文件的内容,csv模块还提供了写入CSV文件的功能。下面是一个使用csv模块写入CSV文件的代码示例:
- import csv
-
- # 定义要写入CSV文件的数据
- data = [['Name', 'Age', 'Gender'],
- ['Alice', 25, 'Female'],
- ['Bob', 30, 'Male'],
- ['Charlie', 35, 'Male']]
-
- # 打开CSV文件
- with open('example.csv', 'w', newline='') as csvfile:
- # 创建CSV写入器
- writer = csv.writer(csvfile)
-
- # 写入数据到CSV文件
- writer.writerows(data)
在上面的代码中,我们首先定义了一个名为data
的列表,其中包含了要写入CSV文件的数据。然后,我们使用open()
函数打开一个名为example.csv
的CSV文件,并指定模式为'w'
,表示写模式。此外,我们还指定了newline=''
参数来避免在写入CSV文件时出现空行。接下来,我们使用csv.writer()
函数创建一个CSV写入器对象,并使用writerows()
方法将整个数据列表写入CSV文件中。最后,我们使用with
语句来自动关闭文件句柄。
除了使用csv.writer()
函数创建CSV写入器对象,还可以使用csv.DictWriter()
函数创建字典写入器对象。该对象可以将数据以字典的形式写入CSV文件,其中字典的键将作为CSV文件的列名。下面是一个使用csv.DictWriter()
函数的代码示例:
- import csv
-
- # 定义要写入CSV文件的数据
- data = [{'Name': 'Alice', 'Age': 25, 'Gender': 'Female'},
- {'Name': 'Bob', 'Age': 30, 'Gender': 'Male'},
- {'Name': 'Charlie', 'Age': 35, 'Gender': 'Male'}]
-
- # 打开CSV文件
- with open('example.csv', 'w', newline='') as csvfile:
- # 创建CSV写入器
- fieldnames = ['Name', 'Age', 'Gender']
- writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
-
- # 写入列名
- writer.writeheader()
-
- # 写入数据到CSV文件
- for row in data:
- writer.writerow(row)
![](https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreBlack.png)
在上面的代码中,我们首先定义了一个名为data
的列表,其中包含了要写入CSV文件的数据。这些数据以字典的形式存储,其中字典的键将作为CSV文件的列名。然后,我们使用open()
函数打开一个名为example.csv
的CSV文件,并指定模式为'w'
,表示写模式。接下来,我们使用csv.DictWriter()
函数创建一个字典写入器对象,并指定列名为fieldnames
。然后,我们使用writeheader()
方法将列名写入CSV文件中。最后,我们使用一个for
循环逐行将数据写入CSV文件中。注意,在使用writerow()
方法时,我们需要将整个字典作为参数传递给该方法。
除了写入CSV文件,csv模块还提供了其他一些有用的功能,例如使用csv.reader()函数逐行读取CSV文件,使用csv.writer()函数将数据写入CSV文件等。
另外,csv模块还支持各种自定义选项,例如指定分隔符、转义字符、引号字符等。这些选项可以在创建CSV读取器或写入器对象时指定。例如,下面是一个使用自定义分隔符的代码示例:
- import csv
-
- # 定义要写入CSV文件的数据
- data = [['Name', 'Age', 'Gender'],
- ['Alice', 25, 'Female'],
- ['Bob', 30, 'Male'],
- ['Charlie', 35, 'Male']]
-
- # 打开CSV文件
- with open('example.csv', 'w', newline='') as csvfile:
- # 创建CSV写入器,指定分隔符为分号
- fieldnames = ['Name', 'Age', 'Gender']
- writer = csv.DictWriter(csvfile, fieldnames=fieldnames, delimiter=';')
-
- # 写入列名
- writer.writeheader()
-
- # 写入数据到CSV文件
- for row in data:
- writer.writerow(row)
![](https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreBlack.png)
在上面的代码中,我们使用csv.DictWriter()
函数创建了一个字典写入器对象,并指定分隔符为分号。然后,我们将数据写入CSV文件中。使用自定义分隔符可以让我们更灵活地处理不同的CSV文件格式。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。