传送门:
目录
一、前言
python内置了一些文件操作函数,可以通过代码来对文件进行创建、读、写、关闭等操作。除此之外,Python 还提供了很多模块,例如 fileinput 模块、pathlib 模块等,通过引入这些模块,我们可以获得大量实现文件操作可用的函数和方法(类属性和类方法),大大提供编写代码的效率。在熟练后,我们也可以通过编写代码来对文件进行数据处理。
二、文件路径
由于本篇是面向初学者,所以我们先来介绍一下文件路径,这个很重要,我们在对文件进行操作时,需要定位到文件,但对于计算机来说,只有把路径写对,它才能定位到正确的文件。
关于文件,它有两个关键属性,分别是“文件名”和“路径”。其中,文件名指的是为每个文件设定的名称,而路径则用来指明文件在计算机上的位置。
在 Windows 上,路径书写使用反斜杠 "\" 作为文件夹之间的分隔符。
三、绝对路径和相对路径
在介绍这个之前,我们需要了解什么叫当前工作目录。比如说,你的D盘有ABC三个文件夹,分别放了a.py,b.py,c.py文件,(a文件放A,b文件放B,c文件放C)。此时我们进入D盘:D:\,这个就是根目录,如果我们需要运行a.py文件,那么需要进入A文件夹,找到a.py文件,那么D:\A就是当前工作目录。
接下来介绍绝对路径和相对路径,文件的路径有着两种表示方法:
绝对路径:总是从根文件夹开始,Window 系统中以盘符(C:、D:)作为根文件夹
相对路径:指的是文件相对于当前工作目录所在的位置。例如,当前工作目录为 "D:\A",则 a.py的相对路径表示为 ".\demo.txt"(其中 .\ 就表示当前所在目录)。在使用相对路径表示某文件所在的位置时,除了经常使用 .\ 表示当前所在目录之外,还会用到 ..\ 表示当前所在目录的父目录。比如说这个栗子,..\就会定位到D:\
四、文件基本操作
4.1 删除文件
对文件可以进行的操作有很多,基本的就是增删改查。对于文件的修改,我们可以使用os、sys模块,并调用模块中的指定函数来实现。
import os
os.remove("a.py")
这样就可以删除a文件。
4.2 打开文件
如果想要操作文件,首先需要创建或者打开指定的文件,并创建一个文件对象,而这些工作可以通过内置的 open() 函数实现。
语法格式:
file = open(file_name [, mode='r' [ , buffering=-1 [ , encoding = None ]]])
- file:表示要创建的文件对象。
- file_name:要创建或打开文件的文件名称,该名称要用引号(单引号或双引号都可以)括起来。需要注意的是,如果要打开的文件和当前执行的代码文件位于同一目录,则直接写文件名即可;否则,此参数需要指定打开文件所在的完整路径。
- mode:可选参数,用于指定文件的打开模式。可选的打开模式如表 1 所示。如果不写,则默认以只读(r)模式打开文件。
- buffering:可选参数,用于指定对文件做读写操作时,是否使用缓冲区(本节后续会详细介绍)
- encoding:手动设定打开文件时所使用的编码格式,不同平台的 ecoding 参数值也不同,以 Windows 为例,其默认 GBK 编码
mode模式分类:
模式 | 描述 |
---|---|
r | 读取(默认) |
w | 写入,并先截断文件 |
x | 排它性创建,如果文件已存在则失败 |
a | 写入,如果文件存在则在末尾追加 |
b | 二进制模式 |
t | 文本模式(默认) |
+ | 更新磁盘文件(读取并写入) |
比如我们创建一个test.txt的文件
#创建
open('test.txt', mode='w',encoding='utf-8')
4.3 写入文件
当我们创建一个txt文件时,这个文件为空,里面什么内容都没有,我们就要进行写入,即增删改查中的改。
python提供了两个函数ÿ