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

如何使用Python函数实现文件的读写

发布时间:2023-06-06 12:00:43

文件的读写是一些比较基础的操作,使用Python函数来实现这些操作一般只需要几行代码即可完成。Python为文件读写操作提供了内置函数open(),可以用它打开文件并读取或写入数据。

打开文件

在Python中,打开文件需要使用open()函数,其语法为:

open(file, mode='r', buffering=-1, encoding=None, errors=None)

其中,file是文件的路径,mode是打开文件的模式:

- 'r':表示只读模式,打开文件只能读取数据,无法写入。

- 'w':表示写入模式,打开文件后可以写入数据,但是会覆盖原有数据(如果文件已存在)。

- 'x':表示创建模式,在打开时如果文件存在就报错,不存在就创建并写入数据。

- 'a':表示附加模式,在打开时将数据追加到文件末尾,保留原始数据。

- 'b':表示二进制模式,打开文件时以二进制方式读取或写入数据。

- 't':表示文本模式,打开文件时以文本方式读取或写入数据。默认就是文本模式,可以不写。

buffering表示缓存大小,默认为-1,表示使用默认值,encoding表示文件的编码格式,errors表示编解码错误的处理方式。

读取文件

在Python中,使用open()函数打开文件后,就可以对文件进行读取操作了。常见的读取文件的方法有:

- read([size]):从文件当前位置开始,读取指定大小的字节数。如果未指定size,则读取所有内容。

- readline([size]):每次读取一行内容,如果未指定size,则读取所有内容。

- readlines([sizehint]):读取所有行并以列表形式返回。如果指定了sizehint,则读取指定大小的数据,并尝试不分段读取多行。

- for line in file:遍历每一行,一次读取一行内容。

示例代码:

# 读取文件内容

with open('example.txt', 'r') as file:

    # 一次性读取所有内容

    content = file.read()

    print(content)

    # 逐行读取

    file.seek(0)

    for line in file:

        print(line)

写入文件

在Python中,使用open()函数打开文件后,也可以对文件进行写入操作。常见的写入文件的方法有:

- write(str):将字符串str写入文件。

- writelines(seq):将序列seq中的字符串逐行写入文件。

示例代码:

# 写入文件内容

with open('example.txt', 'w+') as file:

    file.write('Hello, world!

')

    file.writelines(['Today is a good day.

', 'Python is fun!

'])

读写文件

有些时候,我们需要同时进行文件的读取和写入操作。打开文件时,可以指定模式为'+',表示读写模式。在此模式下,文件的读写都是在同一对象上进行,读取操作不会影响写入操作,反之亦然。

示例代码:

# 读写文件内容

with open('example.txt', 'r+') as file:

    # 读取文件内容

    content = file.read()

    print(content)

    # 追加数据

    file.write('

Goodbye, world!')

    # 指定位置插入数据

    file.seek(8)

    file.write('Python')

总结

Python中使用内置函数open()可以打开文件,并进行文件的读写操作。在打开文件时,需要指定文件的路径和打开模式。对于读取文件,可以使用read()、readline()、readlines()等方法;对于写入文件,可以使用write()、writelines()等方法。同时,可以使用'+'模式实现对文件的读写操作。