20201216_135_CSV文件的读取_写入

CSV 文件的操作

csv(Comma Separated Values)是逗号分隔符文本格式,常用于数据交换、Excel文件和数据库数据的导入和导出。与 Excel 文件不同,CSV 文件中:

  • 值没有类型,所有值都是字符串
  • 不能指定字体颜色等样式
  • 不能指定单元格的宽高,不能合并单元格
  • 没有多个工作表
  • 不能嵌入图像图表

Python 标准库的模块 csv 提供了读取和写入 csv 格式文件的对象。
我们在 excel 中建立一个简单的表格:
在这里插入图片描述
另存为"csv(逗号分隔)",我们打开查看这个 csv 文件内容:
姓名,年龄,工作,薪水
熊大,18,程序员,50000
熊二,19,测试工程师,20000
熊三,20,人工智能开发,50000

csv.reader 对象和 csv 文件读取

【例1】用 csv.reader 从 csv 文件读取数据

import csv
with open(r'f:\b.csv') as a:
    a_csv = csv.reader(a)  # 创建csv对象,它是一个包含所有数据的列表,每一行为一个元素
    print(a_csv)
    print(list(a_csv))

运行结果:
在这里插入图片描述
分析:
可以看到,a_csv是个csv文件对象;它的里面存储了几个字符串列表。

【例2】用 csv.reader 从 csv 文件读取数据

import csv
with open(r'f:\a.csv') as a:
    a_csv = csv.reader(a)  # 创建csv对象,它是一个包含所有数据的列表,每一行为一个元素
    headers = next(a_csv)  # 获得列表对象的标题行信息
    print(headers)
    for row in a_csv:
        print(row)

运行结果:
在这里插入图片描述

【例.额外】用 csv.reader 从 csv 文件读取数据

import csv
with open(r'f:\b.csv') as a:
    a_csv = csv.reader(a)  # 创建csv对象,它是一个包含所有数据的列表,每一行为一个元素
    print(a_csv)
    print(list(a_csv))
    for row in a_csv:
        print(row)

运行结果:
在这里插入图片描述
分析:
最后两行代码没有什么效果的原因是:第一次print(list(a_csv))已经将指针移动到了文件末尾。

csv.writer 对象和 csv 文件写入

【例】用 csv.writer 写一个 csv 文件

import csv

headers = ['工号', '姓名', '年龄', '月薪']
rows = [('1001', '乔布斯', 40, '50000'), ('1002', '库克', 35, '30000')]

with open(r'f:\b.csv', 'w', newline='') as b:  # 添加newline=''使每写一行不会自行增加一行空格
    b_csv = csv.writer(b)  # 创建csv对象
    b_csv.writerow(headers)  # 写入一行(标题)
    b_csv.writerows(rows)  # 写入多行(数据)

运行结果:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值