文件操作
4.1 文件操作基础
4.1.1 内置函数 open
open(file
, mode='r'
, buffering=-1, encoding=None
, errors=None, newline=None, closefd=True, opener=None)
常用参数
- file 指定文件路径,使用原始字符串形式,r’’
- mode
可用模式如下
r 默认模式,读模式,如果文件不存在,抛出异常
w 写模式,如果文件已存在,先清空原有内容;如果文件不存在,创建新文件
x 写模式,创建新文件,如果文件存在抛出异常
a 追加模式,不覆盖文件中原有内容
b 二进制模式,默认文本模式打开,可与 r、w、x、a 组合使用
t 文本模式,默认模式
+ 读、写模式,可与其他模式组合使用 - encoding
文本模式打开文件需要指定编码格式,常用有 utf-8、gbk
4.1.2 文件对象常用方法
- close()
把缓冲区的内容写入文件
,同时关闭文件,释放文件对象 - read([size])
如果打开模式为文本文件
,则从文本文件中读取并返回 size 个字符
如果打开模式为二进制文件
,则从文本文件中读取并返回 size 个字节
省略 size 参数表示读取文件中的全部内容 - readline()
从文本文件
中读取并返回一行内容 - write(s)
如果打开模式为文本文件
,s 是字符串
如果打开模式为二进制文件
,s 是字节串
- writelines(s)
s 为列表
,把 s 中的所有字符串写入文本文件
,写入时不在每个字符串的后面增加换行符
4.1.3 上下文管理语句 with
关键字 with 可以自动管理资源,不论因为什么原因跳出 with 块,总能保证文件被正确关闭,除了用于文件操作,with 还可以用于数据库连接、网络连接等类似场合。
with open(filename, mode, encoding) as fp:
# 这里写通过文件对象 fp 读写文件内容的语句块
注:如果需要同时打开多个文件,以逗号','隔开
open(filename, mode, encoding) as fp1,open(filename, mode, encoding) as fp2
4.2 JSON 文件操作
json
Python 的标准库
常用方法
- dump(information, fp, indent=4, separators=[’ , ', ’ : ‘])
向 json 文件中写入数据
常用参数
information 字典列表
fp 文件对象
indent 指定缩进符空格的数量
separators 指定分隔符,字典内元素之间用’,‘分隔,键值之间用’:'分隔 - load(fp)
从 json 文件中读取数据,返回写入数据时的类型,以字典列表写入则返回列表
读写 json 文件示例
4.3 CSV 文件操作
csv
Python 的标准库
读写 csv 文件示例
注:最后一行的 *line 代表序列解包,取出 line 中所有元素
4.4 Word、Excel、PowerPonit 文件操作
文档类型 | 模块名 | 扩展库名 |
---|---|---|
Word | docx | python-docx |
Excel | openpyxl | openpyxl |
PowerPonit | pptx | python-pptx |
例题
其他文章
Python 数据分析与数据可视化(一)Python 开发环境搭建与编码规范
Python 数据分析与数据可视化(二)数据类型、运算符与内置函数
Python 数据分析与数据可视化(三)列表、元组、字典、集合与字符串
Python 数据分析与数据可视化(四)文件操作
Python 数据分析与数据可视化(五)线性代数基本知识
Python 数据分析与数据可视化(六)numpy 数组和矩阵运算
Python 数据分析与数据可视化(七)pandas数据分析实战
Python 数据分析与数据可视化(八)sklearn机器学习实战
Python 数据分析与数据可视化(工具篇)课程所需扩展库安装
Python 数据分析与数据可视化(实践篇)泰坦尼克号旅客生存预测