csv

1:csv简介

  • python的内置模块,可以跨多种形式,导入导出数据,如可以使用excle打开,一般返回的数据在excel文件中打开
  • 以后的案例都保存在csv文件中

1.2:

2:写入文件和读取文件

2.1:写入文件

  • 把文件写入到csv文件中
  • 通过writer()对象写入,主要使用两个方法

2.1.1:方法一,使用wreter的方式写入文件

  • 通过使用writer()对象写入
  • 1:writerow()写入一行
  • 代码
import csv
headers = ('name','age','height') 		# 只要能够遍历就可以 迭代器 可迭代对象
persons = [
    ('青崖',18,180),
    ('少年梦',28,185),
    ('红苹果',38,170)
]
with open('persons.csv','w',encoding='utf-8') as file_obj:		
    writer = csv.writer(file_obj)		# 创建一个writer对象
    writer.writerow(headers)			# 写入头文件 
    for data in persons:					
        writer.writerow(data)			# 写入数据
  • 2:writerows()写入多行
  • 代码:
headers = ('name','age','height') # 只要能够遍历就可以 迭代器 可迭代对象
persons = [
    ('青崖',58,180),
    ('少年梦',28,185),
    ('红苹果',38,170)
]
with open('persons.csv','w',encoding='utf-8',newline='') as file_obj:		# open()函数默认有空行,在参数newline=''可以实数据相邻
    writer = csv.writer(file_obj)			# 创建一个writer对象
    writer.writerow(headers)				# 写入writer的头文件
    writer.writerows(persons)			# 写入writer的数据

2.2:方法二,使用Dictwriter对象来操作文件

  • 适用于字典类型数据的存储
  • 代码:
headers = ('name','age','height')
persons = [
    {'name':'笔记本','age':18,'height':175},
    {'name':'张同学', 'age': 18,'height':175},
    {'name':'杨同学', 'age': 18,'height':175},
]
with open('persons.csv','w',encoding='utf-8',newline='') as file_obj:
    Dwriter = csv.DictWriter(file_obj,headers)			# 创建一个Dictwriter对象
    Dwriter.writeheader()
    Dwriter.writerows(persons)
  • 总结:
    • 可以通过指定关键子参数newline来实现没有空行

3:读取文件

  • 对保存的数据进行读取

3.1:以reader对象读取

  • 要有一个reader对象来读取
  • 代码
with open('persons.csv','r',encoding='utf-8',newline='') as file_obj:
    reader = csv.reader(file_obj)				# 创建一个reader对象
    for x in reader:
        print(x[2])

3.2:以Dictreader对象的形式来读取

  • 以字典的key值来取值
  • 代码
with open('persons.csv', 'r', encoding='utf-8', newline='') as file_obj:			# 创建一个Dictreader对象
    Dreader = csv.DictReader(file_obj)
    for x in Dreader:
        print(x['name'])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值