Python 文件管理浅析 |Python 主题月

970 阅读3分钟

本文正在参加「Python主题月」,详情查看 活动链接

1. 文件操作概述

假如RD直接扔给你一份excel,让你自己找需要的字段。满心打开文件看1K多行,头皮发麻,一天要测试这么多,想早点下班多我不允许啊。

我们既然都踏上学习Python的路上,今天我们就来学习文件操作的基础知识。

成熟完整的程序都包括数据的存储和读取,我们之前在前面学习的程序数据都没有进行实际的存储,因此Python解释器执行完成数据就消失了。

在日常的工作开发中,我们就像开头场景需要从外部存储介质(硬盘、光盘、U盘等)读取数据,或者将程序产生的数据存储到文件中,实现持久化保存。

很多软件系统是将数据存储的数据库中,数据库实际也是基于文件形式存储的。

2. 文件类型

按文件中数据组织形式,我们把文件分为文本文件和二进制文件两大类

  • 文本文件

    文本文件存储的普通“字符”文本,默认为unicode字符集,可以使用记事本程序打开,但是像word软件编辑的文档不是文本文件

  • 二进制文件

    二进制文件把数据内容用字节进行存储,无法用记事本打开,必须使用专用的软件解码,常见的有:mp4视频文件,mp3音频文件,JPG图片、excel文件等

文件类型

3. 文件操作模块

名称说明
io模块文件流的输入和输入操作input、output
os模块基本操作系统功能,包括文件操作
glob模块查找符合特定规则的文件路径名
fnmatch模块使用模式来匹配文件路径名
fileinput模块处理多个输入文件
filecmp模块用于文件的比较
cvs模块用于csv文件处理
pickle和cPickle用于序列化和序列反序列化
xml包用于XML数据处理
bz2、gzip、zipfile、zlib、tarfile用于处理压缩和解压缩文件(分别对应不同的算法)

4. 文件操作步骤

1. 创建文件对象open()

open()函数用于创建文件对象,基本语法格式如下:

open(文件名[打开方式])

如果只是文件名,代表在当前目录下的文件。文件名可以录入全路径,比如:F:\JueJing.txt,为了减少“\”的输入,可以使用原始字符串: r"f:\JueJing.txt"

 f = open(r"f:\JueJing.txt","a")

创建文件对象

打开方式有如下几类:

模式描述
r读模式
w写write模式,如果文件不存在则创建;如果文件存在,则重写新内容
a追加append模式,如果文件不存在则创建,如果文件存在,则在文件末尾追加内容
b二进制 binary模式(可与其他模式组合使用)
+读、写模式(可与其他模式组合使用)

文本文件对象和二进制对象的创建:

如果没有增加模式“b”,则默认创建的是文本文件对象,处理的单元是字符

如果是二进制模式“b”,则创建的是二进制文件对象,处理的单元是字节

2. 文本文件的写入

文本文件写入的步骤主要有以下步骤 (1) 创建文件对象

(2) 写入数据

(3) 关闭文件,释放系统资源否则OS一直链接文件状态

写入文件操作

f = open("JueJing.txt","a")
s = "JueJing Python"
f.write(s)
f.close()
print("write end")

执行结果

JueJing.txt文件被写入“JueJing Python”

写入结果

3. 文本文件的读取

(1)打开文件

(2)读取文件

(3)关闭文件

我们刚刚写入数据到JueJing.txt文件,那我们来读取一下数据吧

f = open("JueJing.txt","r")
r = f.readline()
print("JueJing.txt文件内容为:",r)
f.close()

读取文件结果

总结

今天,我们认识和学习了文本文件简单的写入读取,后面我们会深入继续学习文件IO相关的知识。

以上是本期内容,欢迎大佬们多多指教,下次见