文件操作函数:Python中如何读写文件
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开发非常重要。当使用这些函数时,要注意文件指针的位置,以免出现读写错误,同时还需要注意文件操作模式,选择合适的操作模式进行文件操作。
