下面我将为您提供Python读写CSV文件的完整攻略。
什么是CSV文件?
CSV的全称是“Comma-separated values”,也称为逗号分隔值文件,是一种常用的电子数据交换格式。通常情况下,CSV文件会以纯文本的形式存储,每行记录表示一个数据行,每行记录中的数据字段通过逗号进行分隔。
Python读写CSV文件
Python标准库和第三方库都提供了多种方式读写CSV文件。这里通过两个示例来介绍如何使用Python进行CSV文件的读写。
示例一:使用Python内置csv库读写CSV文件
Python内置了csv库,可以方便地读写CSV文件。
读取CSV文件的步骤如下:
- 导入csv库
- 打开CSV文件
- 创建csv.reader对象
- 遍历csv.reader对象,获取每行数据
下面是一个读取CSV文件的示例代码:
import csv
with open('file.csv', 'r', encoding='utf-8') as f:
reader = csv.reader(f)
for row in reader:
print(row)
文件名为file.csv,使用utf-8编码进行读取。在代码中使用了with语句,这会自动调用f.close()方法关闭文件。
写入CSV文件的步骤如下:
- 导入csv库
- 创建csv.writer对象
- 写入一行数据
下面是一个写入CSV文件的示例代码:
import csv
with open('file.csv', 'w', encoding='utf-8', newline='') as f:
writer = csv.writer(f)
writer.writerow(['姓名', '年龄', '性别'])
writer.writerow(['张三', '18', '男'])
writer.writerow(['李四', '20', '女'])
文件名为file.csv,使用utf-8编码进行写入。需要注意的是,在写入CSV文件时,必须指定newline='',否则写入到CSV文件的每一行之间会多出一个空行。
示例二:使用pandas库读写CSV文件
pandas是一个Python数据分析库,提供了丰富的数据操作工具,其中包括对CSV文件的读写支持。
读取CSV文件的步骤如下:
- 导入pandas库
- 调用pandas.read_csv()方法读取CSV文件
下面是一个使用pandas读取CSV文件的示例代码:
import pandas as pd
df = pd.read_csv('file.csv', encoding='utf-8')
文件名为file.csv,使用utf-8编码进行读取。读取CSV文件后,将得到一个pandas.DataFrame对象。
写入CSV文件的步骤如下:
- 创建pandas.DataFrame对象
- 调用to_csv()方法将数据写入CSV文件
下面是一个使用pandas写入CSV文件的示例代码:
import pandas as pd
data = {'姓名': ['张三', '李四'], '年龄': ['18', '20'], '性别': ['男', '女']}
df = pd.DataFrame(data)
df.to_csv('file.csv', index=False, encoding='utf-8')
数据通过一个字典对象进行存储,然后创建了一个pandas.DataFrame对象。to_csv()方法可以将DataFrame对象中的数据写入CSV文件。在这里需要指定不要写入索引列,否则会在CSV文件中多出一列索引。
总结
以上就是Python读写CSV文件的完整攻略了。需要使用CSV文件进行数据读写时,可以使用Python内置csv库或第三方pandas库。使用内置csv库可以比较轻松地完成基本操作,而使用pandas库则能够得到更为灵活的数据操作工具。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python数据读写之Python读写CSV文件 - Python技术站