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

文件操作函数:Python中如何读写文件

发布时间:2023-05-20 19:46:58

Python中读写文件是非常常见的操作,文件操作函数提供了非常方便的读写文件的方式,本文将详细介绍Python中的文件操作函数。

一、文件操作模式

Python提供了多种读写文件的方式,常见的文件操作模式如下:

1、读取模式

'r':只读模式,打开文件后只能读取文件内容,不能修改和写入文件。

'r+':读写模式,打开文件后既可以读取文件内容,也可以修改和写入文件,但要注意文件指针的位置。

2、写入模式

'w':写入模式,打开文件后只能写入文件内容,不能读取文件内容,如果文件已存在则清空文件后写入,如果文件不存在则创建文件并写入。

'w+':读写模式,打开文件后既可以读取文件内容,也可以修改和写入文件,但要注意文件指针的位置,如果文件已存在则清空文件后写入,如果文件不存在则创建文件并写入。

3、追加模式

'a':追加模式,打开文件后只能写入文件内容,不能读取文件内容,如果文件已存在则将写入的内容追加到文件尾部,如果文件不存在则创建文件并写入。

'a+':读写追加模式,打开文件后既可以读取文件内容,也可以修改和写入,要注意文件指针的位置,如果文件已存在则将写入的内容追加到文件尾部,如果文件不存在则创建文件并写入。

二、文件操作函数

1、open()函数:打开文件

打开文件是文件操作的 个步骤,Python中的open()函数用于打开一个文件,该函数的语法格式如下:

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

参数说明:

file:必须,文件的路径和名称,可以是相对路径或绝对路径。

mode:可选,文件打开的模式,默认为'r'模式。

buffering:可选,设置缓冲大小,传递0以禁用缓冲,传递大于1的数字以设置缓冲区大小,传递-1使用默认缓冲区大小。

encoding:可选,使用的编码格式。

errors:可选,错误处理方案。

newline:可选,新行字符,对于需要非标准行结束符的平台非常有用,如微软Windows。

closefd:可选,对于Unix平台不起作用,指示释放fd。

opener:可选,打开文件时使用的自定义方法,用于自定义新的文件打开方式。

示例:

1)打开一个只读文件,读取全部文件内容并输出。

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

print(f.read())

f.close()

2)写入文件内容。

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

f.write("Hello,World!

")

f.close()

3)追加文件内容。

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

f.write("Welcome to Python World.")

f.close()

2、read()函数:读取文件内容

read()函数是用于读取文件内容的函数,该函数从文件打开的位置开始读取内容,直到读取的字符达到文件末尾。

语法格式:file.read(size)

参数说明:

size:可选,要读取的字符数,如果未指定,则读取整个文件内容,相当于readlines()函数。

示例:

1)读取整个文件内容。

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

print(f.read())

f.close()

2)读取部分文件内容,读取前5个字符。

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

print(f.read(5))

f.close()

3、readline()函数:读取一行内容

readline()函数从文件打开的位置开始读取一行内容,每次调用该函数会读取一行内容,直到读取的字符达到文件末尾,该函数返回一个字符串对象。

语法格式:file.readline(size)

参数说明:

size:可选,要读取的字符数。

示例:

1)读取文件的 行。

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

print(f.readline())

f.close()

2)读取文件的前两行。

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

print(f.readline())

print(f.readline())

f.close()

4、readlines()函数:读取所有行

readlines()函数从文件打开的位置开始读取所有行,将每一行存储为字符串列表,该函数返回一个列表对象。

语法格式:file.readlines(sizehint)

参数说明:

sizehint:可选,要读取的文件内容大小,以字节为单位。

示例:

1)读取整个文件的内容,并以列表形式输出每一行内容。

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

print(f.readlines())

f.close()

2)读取文件的前两行,并以列表形式输出。

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

print(f.readlines(2))

f.close()

5、write()函数:写入文件内容

write()函数是用于写入文件内容的函数,该函数将传入的参数以字符串形式写入到文件中,如果文件不存在则会创建文件并写入。

语法格式:file.write(str)

参数说明:

str:必须,要写入的字符串。

示例:

1)写入文件内容。

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

f.write("Hello,World!

")

f.close()

6、writelines()函数:写入多行数据

writelines()函数可以将多个字符串以列表的形式写入文件中,该函数省略了字符串拼接的过程,并且具有更快的速度。

语法格式:file.writelines(sequence)

参数说明:

sequence:必须,包含字符串的可迭代对象,如列表、元组等。

示例:

1)写入多行数据。

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

f.writelines(["Hello,World!

", "Welcome to Python World!"])

f.close()

7、close()函数:关闭文件

close()函数是用于关闭文件的函数,文件被关闭后将不能再进行任何操作。

语法格式:file.close()

参数说明:无

示例:

1)关闭文件。

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

f.write("Hello,World!

")

f.close()

三、总结

Python中提供了丰富的文件操作函数,包括打开文件、读写文件、关闭文件等,掌握这些函数对于Python开发非常重要。当使用这些函数时,要注意文件指针的位置,以免出现读写错误,同时还需要注意文件操作模式,选择合适的操作模式进行文件操作。