写点什么

Python 文件处理指南:打开、读取、写入、追加、创建和删除文件

作者:小万哥
  • 2023-11-06
    广东
  • 本文字数:1476 字

    阅读完需:约 5 分钟

Python 文件处理指南:打开、读取、写入、追加、创建和删除文件

文件处理是任何 Web 应用程序的重要部分。Python 有多个用于创建、读取、更新和删除文件的函数。

文件处理

在 Python 中处理文件的关键函数是 open()函数。open()函数接受两个参数:文件名和模式。


有四种不同的方法(模式)可以打开文件:


  • "r" - 读取 - 默认值。打开一个文件以进行读取,如果文件不存在则报错。

  • "a" - 追加 - 打开一个文件以进行追加,如果文件不存在则创建文件。

  • "w" - 写入 - 打开一个文件以进行写入,如果文件不存在则创建文件。

  • "x" - 创建 - 创建指定的文件,如果文件存在则返回错误。


此外,您可以指定文件是二进制模式还是文本模式:


  • "t" - 文本 - 默认值。文本模式。

  • "b" - 二进制 - 二进制模式(例如,图像)。

语法

要打开一个文件进行读取,只需指定文件的名称:


f = open("demofile.txt")
复制代码


上述代码与以下代码等效:


f = open("demofile.txt", "rt")
复制代码


因为"r"表示读取,"t"表示文本,它们是默认值,您不需要指定它们。


打开服务器上的文件


假设我们有以下文件,位于与 Python 相同的文件夹中:


demofile.txtHello! Welcome to demofile.txtThis file is for testing purposes.Good Luck!
复制代码


要打开该文件,使用内置的 open()函数。


open()函数返回一个文件对象,该对象具有用于读取文件内容的 read()方法:


f = open("demofile.txt", "r")print(f.read())
复制代码


如果文件位于不同的位置,您将不得不指定文件路径,如下所示:


f = open("D:\\myfiles\\welcome.txt", "r")print(f.read())
复制代码


只读取文件的一部分


默认情况下,read()方法返回整个文本,但您也可以指定要返回多少个字符:


f = open("demofile.txt", "r")print(f.read(5))
复制代码

读取行

您可以使用 readline()方法返回一行:


f = open("demofile.txt", "r")print(f.readline())
复制代码


通过调用 readline()两次,您可以读取前两行:


f = open("demofile.txt", "r")print(f.readline())print(f.readline())
复制代码


通过循环遍历文件的各行,您可以一行一行地读取整个文件:


f = open("demofile.txt", "r")for x in f:  print(x)
复制代码

关闭文件

最佳实践是在使用完文件后始终关闭它。


f = open("demofile.txt", "r")print(f.readline())f.close()
复制代码

写入现有文件

要写入现有文件,您必须向 open()函数添加一个参数:


  • "a" - 追加 - 将追加到文件的末尾。

  • "w" - 写入 - 将覆盖任何现有内容。


f = open("demofile2.txt", "a")f.write("Now the file has more content!")f.close()
复制代码


要检查文件是否位于不同的位置,您将不得不指定文件路径,如下所示:


f = open("demofile3.txt", "w")f.write("Woops! I have deleted the content!")f.close()
复制代码


注意:使用"w"方法将覆盖整个文件。

创建新文件

要在 Python 中创建新文件,请使用 open()方法,使用以下参数之一:


  • "x" - 创建 - 如果文件存在则返回错误。

  • "a" - 追加 - 如果指定的文件不存在,将创建文件。

  • "w" - 写入 - 如果指定的文件不存在,将创建文件。


f = open("myfile.txt", "x")
复制代码


结果:创建了一个新的空文件!


f = open("myfile.txt", "w")
复制代码

删除文件

要删除文件,您必须导入 OS 模块,并运行其 os.remove()函数:


import osos.remove("demofile.txt")
复制代码


检查文件是否存在:


为了避免出现错误,您可能希望在尝试删除文件之前检查文件是否存在:


import osif os.path.exists("demofile.txt"):  os.remove("demofile.txt")else:  print("The file does not exist")
复制代码

删除文件夹

要删除整个文件夹,请使用 os.rmdir()方法:


import osos.rmdir("myfolder")
复制代码

最后

为了方便其他设备和平台的小伙伴观看往期文章:公众号搜索Let us Coding,或者扫描下方二维码,关注公众号,即可获取最新文章。


看完如果觉得有帮助,欢迎点赞、收藏关注



发布于: 刚刚阅读数: 6
用户头像

小万哥

关注

代码如人生 2023-02-09 加入

编程爱好者

评论

发布
暂无评论
Python 文件处理指南:打开、读取、写入、追加、创建和删除文件_Python_小万哥_InfoQ写作社区