Python基础知识学习(十五)——文件操作(csv、json、Excel文件)

目录

1.文件操作基础

2.csv文件(csv模块)

3.JSON文件(json模块)

4.excel文件(xlrd模块与xlwt模块)


本节扩展了之前学过的文件操作,介绍了csv文件,JSON文件,Excel文件,之后又学习在Python中是如何对这三种文件进行读写操作,主要使用到了三个模块csv模块、json模块、xlrd和xlwt模块并介绍了其中简单的方法。

1.文件操作基础

复习一下最简单的文件读写操作,open,write

 

2.csv文件(csv模块)

csv全称Comma-Separated Values,译为逗号分隔值。类似的还有tsv译为tab键分隔值。

在Python为我们内置了csv模块对csv文件进行读取。

导入csv模块:

import csv

方法:

csv.reader(文件)                   创建csv读取器

csv.DictReader(文件)           将创建csv读取器,读取格式为字典表

csv.writer(文件)                    创建csv写入器

写入器.writerow(头部)          写入头部

写入器.writerows(内容)        写入内容

csv.DictWriter(文件,头部)   创建csv写入器,写入格式为字典表

写入器.writeheader()            写入头部,因为在创建时候指定了头部,所以不需要指定头部

 

  • 读取方法一:最简单的读取csv文件方式

我们发现使用csv.reader读取文件的结果是列表,那么我们可以使用索引来调用列表中的数据

  • 读取方法二:读取csv文件并使用namedtuple映射列名

导入模块 from collections import namedtuple

使用namedtuple后可以直接对象.属性读取属性

  • 读取方法三:读取csv到字典表

  • 写入方法一:将列表吸入到csv文件

运行结果:生成了my_course.csv文件,文件内容如下图

因为写入数据自带了换行的\n,可以在文件打开时将newline='',这样csv文件就不会用空行

  • 写入方法二:将字典表写入csv

 

3.JSON文件(json模块)

JSON采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。JSON与Python中字典格式类似以键值对的方式存储数据。不同的是JSON的true\false等于Python中的True\False、JSON中的null等于Python中的None

导入模块:

方法:

json.dumps(Python对象)            将Python对象转换成JSON字符串

json.loads(JSON字符串)            将JSON字符串转换为Python对象

json.dump(Python对象,文件)   将Python对象以JSON格式写入到文件

json.load(文件)                           从JSON文件中读取Python对象

Python与JSON字符串的转换

写入json文件

读取json文件

Python对象类型与JSON中类型的差异

 

4.excel文件(xlrd模块与xlwt模块)

想要与excel文件进行交互,需要安装xlrd与xlwt模块,可以使用pip安装也可以直接在Pycharm中安装

我们准备了一个名为product.xls的excel文件,其中有Product、Pro、Sheet2三张表

首先导入模块

方法:

xlrd.open_workbook(xls文件)    构造xls文件读取器

读取器.sheets()                     返回所有表,可以用for遍历

表.name                                       返回表名

方法:

读取器.sheet_by_name(表名')    返回指定的表

表.nrows                                      返回表的行数

表.name                                      返回表名

表.row_values(i)                          返回第i行的数据

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值