Python之CSV文件操作

前言

这几年一直在it行业里摸爬滚打,一路走来,不少总结了一些python行业里的高频面试,看到大部分初入行的新鲜血液,还在为各样的面试题答案或收录有各种困难问题

于是乎,我自己开发了一款面试宝典,希望能帮到大家,也希望有更多的Python新人真正加入从事到这个行业里,让python火不只是停留在广告上。

微信小程序搜索:Python面试宝典

或可关注原创个人博客:https://lienze.tech

也可关注微信公众号,不定时发送各类有趣猎奇的技术文章:Python编程学习

CSV文件

CSV文件通常用于我们在电子表格软件和纯文本之间交互数据,CSV文件内容是一些用逗号分隔的原始字符串。

CSV文件的操作在Python中有单独的模块来使用,模块名为csv


CSV文本操作

import csv # 导包
fp = open('1.csv', 'a+') # 生成文件句柄
fp = csv.writer(fp) # 生成csv写对象
fp = csv.reader(fp) # 生成csv读对象

CSV写文件

为文件写入以逗号分割的数据;逗号分割的数据:常见的有listtupleset

writer = csv.writer(fp)
writer.writerow(('a','b','c','d'))
  • 注意:在写csv文件的时候,可能会出现数据空行;可以通过在打开文件时指定: newline=’’ 或以二进制打开
fp = open('1.csv','rb',newline='')

CSV读文件

reader = csv.reader(fp) #生成对应文件的csv读对象
for var1,var2,var3… in reader:
	print(var1,var2,var3…)

字典形式读写文件

除了以上读写csv文件的方式,csv模块还提供了 csv.DictReader()csv.DictWriter()
用于将字典形式的数据写入csv文件,以及从csv文件读取出的数据保存在字典中

import csv

#csv.DictWriter
with open('names.csv', 'w') as csvfile:
    fieldnames = ['first_name', 'last_name']#指定标题列
    writer = csv.DictWriter(csvfile, fieldnames=fieldnames)

    writer.writeheader()
    writer.writerow({
     'first_name': 'Baked', 'last_name': 'Beans'})
    writer.writerow({
     'first_name': 'Lovely', 'last_name': 'Spam'})
    writer.writerow({
     'first_name': 'Wonderful', 'last_name': 'Spam'})

#csv.DictReader
with open('names.csv') as csvfile:
	reader = csv.DictReader(csvfile)
	for row in reader:
		print(row['first_name'], row['last_name'])#根据标题列定义的数据取行内容

你可能感兴趣的:(Python学习,python,csv)