Python文件读取和写入

文件读取和写入是 Python 中常见的操作之一,通过这些操作,我们可以读取外部文件中的数据,对其进行处理,并将处理结果写入到文件中。本文将详细介绍 Python 中的文件读取和写入操作,包括如何打开文件、读取文件内容、写入文件内容等。

一、打开文件

在 Python 中,我们可以使用内置的 open() 函数来打开一个文件,其语法如下:file = open(filename, mode)

其中,filename 是要打开的文件名(包括路径),mode 是打开文件的模式,常用的模式包括:

  • 'r':只读模式,用于读取文件内容(默认模式)。
  • 'w':写入模式,用于写入文件内容,如果文件不存在则创建新文件,如果文件已存在则清空文件内容。
  • 'a':追加模式,用于在文件末尾添加内容,如果文件不存在则创建新文件。
  • 'b':二进制模式,用于读取或写入二进制文件

    二、文件读取

    打开文件后,可以使用文件对象的 read() 方法来读取文件内容,或者逐行读取文件内容。以下是一些常见的文件读取操作示例:

    1. 读取整个文件内容
  • file = open("example.txt", "r")
    content = file.read()
    print(content)
    file.close()
     
  • 2. 逐行读取文件内容
  • file = open("example.txt", "r")
    for line in file:
        print(line.strip())  # strip() 方法用于去除行末尾的换行符
    file.close()
     
  • 3. 读取指定字节数
  • file = open("example.txt", "r")
    content = file.read(100)  # 读取前 100 个字节的内容
    print(content)
    file.close()

    三、文件写入

    同样地,通过文件对象的 write() 方法可以将数据写入文件中。以下是一些常见的文件写入操作示例:

    1. 写入单行内容

file = open("example.txt", "w")
file.write("Hello, world!\n")
file.close()
2. 写入多行内容

lines = ["Line 1\n", "Line 2\n", "Line 3\n"]
file = open("example.txt", "w")
file.writelines(lines)
file.close()
3. 追加内容到文件末尾

file = open("example.txt", "a")
file.write("Append content\n")
file.close()

四、自动关闭文件

在 Python 中,使用 open() 函数打开文件后,应该始终使用 close() 方法关闭文件,以释放文件资源。为了确保文件被正确关闭,可以使用 with 语句,它会在代码块执行完毕后自动关闭文件,无需手动调用 close() 方法。

with open("example.txt", "r") as file:
    content = file.read()
    print(content)

五、异常处理

在文件读取和写入过程中,可能会出现各种异常情况,例如文件不存在、权限不足等。为了增加程序的健壮性,我们可以使用异常处理机制来捕获并处理这些异常。

try:
    file = open("example.txt", "r")
    content = file.read()
    print(content)
except FileNotFoundError:
    print("文件不存在!")
finally:
    file.close()

结语

通过本文的介绍,你应该对 Python 中的文件读取和写入有了全面的了解。文件读取和写入是 Python 编程中常见的操作之一,掌握这些操作可以帮助我们处理各种文件相关的任务,例如数据处理、日志记录、配置文件读写等。记得在使用文件操作时,始终确保文件被正确关闭,以避免资源泄漏和其他问题。

  • 31
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值