1.csv文件介绍
CSV文件是一种常见的数据格式,它以逗号分隔不同的字段,每行表示一个数据记录。在Python中,我们可以使用csv模块来读取和写入CSV文件。
2.写入CSV文件
在Python中,我们可以使用csv模块的writer对象来写入CSV文件。下面是一个例子:
import csv
# 创建要写入的数据
data = [
['张三', 20, '男'],
['李四', 25, '女'],
['王五', 30, '男']
]
# 打开文件,指定写入模式
with open('data.csv', 'w', newline='') as file:
# 创建csv写入对象
writer = csv.writer(file)
# 写入表头
writer.writerow(['姓名', '年龄', '性别'])
# 写入数据
writer.writerows(data)
在上面的例子中,我们首先创建了要写入的数据,它是一个包含多个列表的列表。然后使用open()
函数打开文件,并指定写入模式。newline=''
表示不使用额外的换行符。接着创建了一个csv写入对象writer
,使用writerow()
方法写入表头,使用writerows()
方法写入数据。最后,使用with
语句来自动关闭文件。
需要注意的是,写入CSV文件时,需要将数据转换成字符串格式。如果写入的数据中包含逗号、双引号等特殊字符,需要进行处理。例如:
import csv
# 创建要写入的数据
data = [
['张三', 20, '男'],
['李四', 25, '女'],
['王五', 30, '男'],
['"Tom, Jerry"', 35, '男']
]
# 打开文件,指定写入模式
with open('data.csv', 'w', newline='') as file:
# 创建csv写入对象
writer = csv.writer(file)
# 写入表头
writer.writerow(['姓名', '年龄', '性别'])
# 写入数据
for row in data:
# 将包含特殊字符的数据进行处理
row[0] = row[0].replace('"', '""')
row[0] = f'"{row[0]}"'
writer.writerow(row)
在上面的例子中,我们创建了一个包含特殊字符的数据,它包含逗号和双引号。为了写入这个数据,我们需要将双引号进行转义,并在数据前后加上双引号。具体来说,我们使用replace()
方法将双引号替换成两个双引号,然后使用f-string
将数据前后加上双引号。
3.读取CSV文件
在Python中,我们可以使用csv模块的reader对象来读取CSV文件。下面是一个例子:
import csv
# 打开文件,指定读取模式
with open('data.csv', 'r') as file:
# 创建csv读取对象
reader = csv.reader(file)
# 遍历每一行数据
for row in reader:
print(row)
在上面的例子中,我们使用open()
函数打开文件,并指定读取模式。然后创建了一个csv读取对象reader
,使用for
循环遍历每一行数据,并使用print()
函数输出。
需要注意的是,在读取CSV文件时,每一行数据都会被解析成一个列表。如果CSV文件中有表头,第一行数据就是表头,可以使用next()
函数跳过:
import csv
# 打开文件,指定读取模式
with open('data.csv', 'r') as file:
# 创建csv读取对象
reader = csv.reader(file)
# 跳过表头
next(reader)
# 遍历每一行数据
for row in reader:
print(row)
在上面的例子中,我们使用next()
函数跳过了表头。
另外,如果CSV文件中包含特殊字符,例如逗号、双引号等,需要使用csv.reader
的quotechar
参数来指定转义字符。例如:文章来源:https://www.toymoban.com/news/detail-457246.html
import csv
# 打开文件,指定读取模式
with open('data.csv', 'r') as file:
# 创建csv读取对象
reader = csv.reader(file, quotechar='"')
# 遍历每一行数据
for row in reader:
print(row)
在上面的例子中,我们使用quotechar='"'
来指定双引号为转义字符。这样,包含双引号的数据就可以正确解析了。文章来源地址https://www.toymoban.com/news/detail-457246.html
到了这里,关于Python——csv文件的写入与读取的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!