同时使用python中的语句打开多个文件
#编程 #教程 #python #file

文件

在计算机术语中,文件是一个存储某些信息的容器。

我们通过将文件永久存储在光学驱动器,硬盘驱动器或其他类型的存储设备上,将其用于将来使用数据。

由于我们将数据存储在文件中,有时我们需要它们 write 请参阅我们的数据。

对于此类文件操作,在Python中,我们有一个内置功能,可以帮助打开文件,在文件上执行阅读和写作操作,甚至在完成任务完成后关闭文件。

介绍

在本文中,我们将讨论如何使用Python中的 with语句打开多个文件?

让我们探索方式并编写一些代码。

使用Open()函数

好吧,我们要讨论的第一种方法是使用python的内置open()函数。

如果您熟悉open()函数,那么您可能会知道一次只需一个文件路径。

这是语法:

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

因此,我们无法传递多个文件路径,如果我们尝试这样做,那么我们会得到错误

但是有一种方法,我们可以使用with语句使用open()函数打开和读取多个文件。

这是代码:

  • with open("first.txt") as file_1, open("second.txt") as file_2, open("third.txt") as file_3:在这里,我们为每个文件使用open()函数,该文件包裹在with语句中。

  • f1 = file_1.read() f2 = file_2.read() f3 = file_3.read():然后我们使用了read()函数并将它们存储在变量中。

  • for lines in f1, f2, f3:我们在每个文件中使用for循环在内容上迭代。

  • print(lines):然后我们最终打印了每个文件的内容。

这是输出:

Output of open function

如果我们有很多文件,我们必须同时打开和读取这些文件,那么我们必须编写更多的代码行,而代码又不是一团糟,这不是一个好练习。

好吧,我们还有另一种使用较小的代码行进行相同操作的方式。

使用FileInput模块

首先,fileinput模块是Python的内置模块,因此您无需明确安装。

fileinput - 来自多个输入流的线路

使用open()函数同时打开多个文件可能不错,但并不方便。

而不是使用第一种方式,我们可以使用fileinput模块。

让我们研究代码并学习用例:

  • import fileinput:由于它是一个模块,我们必须导入它才能开始。

  • with fileinput.input(files=('first.txt', 'second.txt','third.txt')) as f:我们从fileinput模块调用input方法,并将文件指定到with语句中包装的文件中。

  • for line in f:在这里我们使用for循环在文件的内容上迭代。

  • print(line):最后打印这些内容。

有关fileinput模块的更多详细信息,请单击here

这是输出:

Output of fileinput module

输出是相同的,因为我们使用了上面使用的相同文件。

注意:此模块仅在read模式下打开文件,我们不能以书面模式打开文件。它必须是'r''rU''U''rb'

结论

我们执行了相同的任务,但我们使用了不同的方法来处理它们。两种方式都很好。

我们在这里学到了两种处理阅读和打开多个文件的方法。一个是使用open()函数,另一个是使用fileinput模块。

但是每个功能和模块都有其自己的优点和缺点。

我们不能使用python的open()函数打开多个文件,直到我们使用with语句,但是如果我们有很多文件,则代码会弄乱。

,对于fileinput模块,我们可以使用较小的代码行完成相同的任务,但仅可用于读取模式。


如果您喜欢这个

,您可能会感兴趣的其他文章

Perform high-level file operation using shutil module in Python

Read and write zip files without extracting them using Python

Take multiple inputs from the users in a single line in Python

Generate and manipulate temporary files using the tempfile module in Python

Extract data from the webpage's HTML using Python

Opening, reading and writing files in Python

Moving and locating the file cursor using seek() and tell() functions in Python


这就是本文的全部

保持编码