下面我将为你讲解如何进行Python csv文件的读写操作。
1. 什么是csv文件
csv全称Comma-Separated Values,即逗号分隔值文件,是一种常见的电子表格或数据库存储格式,用逗号来分割一行中各个字段的数据。
2. 如何读取csv文件
使用Python内置的csv模块可以很方便地对csv文件进行读取。下面是一个读取csv文件的示例:
import csv
with open('data.csv') as f:
reader = csv.reader(f)
for row in reader:
print(row)
这个示例中,我们打开名为data.csv的文件并读取其中的数据,然后使用csv.reader将数据读取出来。最后,我们使用for循环逐行输出数据。
3. 如何写入csv文件
使用Python内置的csv模块同样可以很方便地对csv文件进行写入。下面是一个将数据写入到csv文件的示例:
import csv
data = [['name', 'age', 'gender'], ['Tom', '18', 'male'], ['Lily', '20', 'female']]
with open('data.csv', 'w', newline='') as f:
writer = csv.writer(f)
for row in data:
writer.writerow(row)
这个示例中,我们定义了一个包含多个列表的二维数组,并将其写入到名为data.csv的文件中。注意,我们使用了csv.writer来将数据写入文件中,并且需要指定newline参数为空字符串,以免出现多余的空行。
4. 示例说明
示例1:读取csv文件并计算其中数值列的平均值
import csv
with open('data.csv') as f:
reader = csv.reader(f)
header = next(reader)
sum_ = 0
count = 0
for row in reader:
sum_ += float(row[1])
count += 1
mean = sum_ / count
print('The average age is:', mean)
在这个示例中,我们读取了data.csv文件,并使用for循环遍历文件中的每一行数据。由于第一行是字段名,我们使用next函数跳过第一行。接着,我们取出每一行中的第二个字段(假设它是数值类型),并把它们加起来计算平均值。
示例2:将字典列表写入csv文件
import csv
data = [{'name': 'Tom', 'age': 18, 'gender': 'male'},
{'name': 'Lily', 'age': 20, 'gender': 'female'}]
fieldnames = ['name', 'age', 'gender']
with open('data.csv', 'w', newline='') as f:
writer = csv.DictWriter(f, fieldnames=fieldnames)
writer.writeheader()
for row in data:
writer.writerow(row)
在这个示例中,我们定义了一个字典列表data,其中每个字典表示一个人的信息。然后,我们定义了一个列表fieldnames,其中包含了字段名。接着,我们使用csv.DictWriter将数据写入到文件中。注意,我们使用了writer.writeheader函数来先将字段名写入文件中。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python csv文件的读写操作实例详解 - Python技术站