欢迎访问宙启技术站
智能推送

文件操作相关的Python函数及使用方法

发布时间:2023-05-27 12:15:06

Python的文件操作是非常重要的一部分,文件处理是我们日常编程中必不可少的部分,本文将介绍文件操作相关的Python函数及使用方法。

1.打开文件及关闭文件

在Python中,我们使用open()函数来打开一个文件,open()函数负责打开文件并且返回一个文件对象,其常用格式如下:

file = open("filename", "mode")

其中,filename是文件名(可以含路径),mode是打开文件的模式。mode有以下几种:

1. “r”: 读取模式,只能读取文件内容,不能写入。

2. “w”: 写入模式,可以写入文件内容,如果文件存在则覆盖,如果不存在则新建文件。

3. “a”: 追加模式,可以写入文件内容,如果文件存在,则将内容追加到文件末尾,如果文件不存在,则新建文件。

4. “b”: 二进制模式,打开二进制文件,如图片、音频等文件。

示例代码:

f = open("test.txt", "w")

f.write("Hello World")

上述代码创建了一个test.txt的文件,并且写入了“Hello World”,由于没有关闭文件,建议在完成写入后手动关闭文件:

f.close()

对于文件的读取,read()方法可以用于读取整个文件,代码示例:

f = open("test.txt", "r")

print(f.read())

f.close()

close()方法用于关闭一个打开文件。 的方式是使用with语句,它可以自动帮你关闭文件:

with open("test.txt", "r") as f:

   print(f.read())

2.文件的读取

我们可以使用read()方法来读取文件,read()方法和fwrite()类似,会读入整个文件或者指定大小的内容进行处理。示例代码:

f = open("test.txt", "r")

print(f.read())

f.close()

read()方法也可以指定读取的字节数,如下所示:

f = open("test.txt", "r")

print(f.read(5)) # 读取前5个字节

f.close()

readline()方法用于读取文件的一行内容,代码如下:

f = open("test.txt", "r")

print(f.readline())

f.close()

readlines()方法用于读取文件中的所有行到一个列表中,代码如下:

f = open("test.txt", "r")

print(f.readlines())

f.close()

3.文件的写入

我们可以使用write()方法来写入文件。write()方法向文件中写入指定内容,代码如下:

f = open("test.txt", "w")

f.write("Hello World")

f.close()

建议在完成写入后手动关闭文件。

4.文件指针操作

在使用read()或readline()读取文件时,Python会从文件当前的位置开始读取,每执行一次读取文件,文件的指针会后移。

使用tell()方法,我们可以获取当前文件指针的位置,代码如下:

f = open("test.txt", "rb")

print(f.tell()) # 获取当前指针位置

print(f.read(2)) # 读取前两个字节

print(f.tell()) # 获取当前指针位置

f.close()

在处理大型文件时特别有用的是使用seek()方法。seek()方法会移动文件指针到指定的位置,如下所示:

f = open("test.txt", "rb")

print(f.tell()) # 当期文件指针位置

print(f.read(2)) # 读前两个字节

f.seek(0) # 将指针移动到文件开头

print(f.read(2)) # 再次读前两个字节

f.close()

在本示例中,我们将文件指针移动到了文件开头,并且读取了 组2个字节,然后我们再一次使用了文件指针到文件开头的方法,并读取了同样的2个字节。

总结

Python的文件操作是我们编程中不可或缺的一部分,Python通过open()函数来打开、操作及读写文件。为了保证程序的主动性,最后需使用close()函数手动关闭文件,为了保证程序的健壮性,我们应该尽量使用with语句。此外,Python还提供了读取行、读取单行、读取所有行、指针移动等相关操作。