详解 Python 操作多个文件(fileinput)模块使用方法

fileinput是Python内置模块之一,它提供了一种方便的方式来迭代处理多个文件或标准输入。使用fileinput模块,可以很容易地遍历多个文件的所有行,而不必手动打开和关闭每个文件。

fileinput模块中最常用的函数是input(),它可以迭代处理多个文件或标准输入。它的用法是将文件名作为参数传递给input()函数,然后使用for循环来处理每一行。input()函数返回的是一个可迭代的对象,它可以产生所有输入文件的行。

下面是一个简单的示例,演示如何使用fileinput模块迭代处理多个文件:


import fileinput

for line in fileinput.input(['file1.txt', 'file2.txt']):
    print(line.rstrip())

上面的代码将打开file1.txt和file2.txt两个文件,并逐行读取它们的内容,然后输出到控制台。rstrip()函数用于删除每行末尾的换行符。

如果不传递参数给input()函数,它将默认从标准输入中读取数据。此外,fileinput模块还提供了一些其他函数,例如filename()和lineno(),可以用来获取当前处理的文件名和行号。

另外,fileinput模块还可以方便地用于修改文件。默认情况下,input()函数只读取文件的内容,如果要写入文件,则需要使用fileinput.output()函数。该函数的用法与input()函数类似,但是它需要设置inplace=True参数以启用原地修改。下面是一个简单的示例,演示如何使用fileinput模块来替换文件中的所有单词hello为world:

import fileinput

for line in fileinput.input('file.txt', inplace=True):
    line = line.replace('hello', 'world')
    print(line, end='')

上面的代码将打开file.txt文件,并将其中所有单词hello替换为world。原地修改意味着不需要创建新文件,而是在原始文件中进行修改。由于inplace=True参数的设置,输出将被重定向到原始文件中。最后,使用print()函数将修改后的行写入文件中。注意,print()函数必须以end=''的形式调用,以确保每行不会被自动换行。

fileinput模块提供了一个方便的方式来迭代处理多个文件或标准输入,并且可以用于读取和修改文件。

此文章发布者为:Python技术站作者[metahuber],转载请注明出处:https://pythonjishu.com/python-fileinput-file/

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年 2月 25日 下午9:00
下一篇 2023年 2月 25日 下午9:09

相关推荐

  • Python 打开文件(open)函数使用方法

    open() 是 Python 中用于打开文件的内置函数。它可以以指定的模式打开文件,然后进行读取或写入等操作。在此函数中,您可以指定打开文件的方式、文件名、缓冲方式、读取/写入等操作等。 下面是 open() 函数的格式与参数:open(file, mode=’r’, buffering=-1, encoding=None, errors=None, ne…

    2023年 2月 25日
    00
  • Python 关闭文件(close)函数使用方法

    在Python中,要关闭已打开的文件,可以使用文件对象的close()方法。该方法用于关闭文件对象,释放系统资源。 close()方法没有参数,可以在任何时候调用,但建议在读写完文件后立即关闭文件,以便在不需要文件访问时释放系统资源。 下面是一个简单的例子: file = open("example.txt", "r"…

    2023年 2月 25日
    00
  • Python 逐行读取文件(readline、readline)函数使用方法

    在 Python 中,可以使用 readline() 和 readlines() 两个函数来按行读取文件。 readline() 函数每次读取一行,读取到文件末尾时返回一个空字符串。可以通过循环来逐行读取整个文件,例如: with open('file.txt', 'r') as f: line = f.readlin…

    2023年 2月 25日
    00
  • Python linecache模块详解:读取文本文件的某一行

    Python的linecache模块是一个内置的模块,用于在Python中读取文本文件的某一行。它可以实现高效的文件行缓存和缓存行号和行内容。 linecache模块提供了3个函数来读取文本文件的行: linecache.getline(filename, lineno[, module_globals]):返回指定文件中的指定行,lineno为行号,从1开…

    2023年 2月 25日
    00
  • 详解 Python pathlib(处理文件路径)模块函数

    Python的pathlib模块提供了一种面向对象的处理文件路径和目录路径的方式。它在Python 3.4及以上版本中已经内置,无需安装额外的模块。 pathlib模块主要包含了两个类:Path和PurePath。Path是操作系统上的实际路径,而PurePath则是一个纯粹的路径,不考虑操作系统的差异。下面我们来详细讲解一下这两个类的用法。 Path类 P…

    2023年 2月 25日
    00
  • Python 移动指针(seek)、获取指针(tell)函数使用方法

    在 Python 中,可以使用 seek() 和 tell() 函数来在文件中移动指针和获取指针当前位置的偏移量。 seek() 函数 seek() 函数用于移动文件指针的位置。它的语法如下: file.seek(offset[, whence]) 其中,offset 是相对于 whence 参数指定位置的偏移量,whence 是可选参数,表示从哪个位置开始…

    2023年 2月 25日
    00
  • Python 读取文件(read)函数使用方法

    在 Python 中,read() 是文件对象的一个方法,用于读取文件中的内容。read() 方法可以读取文件的全部内容,也可以读取指定长度的内容。 read() 方法的语法如下: file.read([size]) 其中,file 是文件对象,size 是要读取的数据的字节数。如果省略 size 参数,read() 方法将会读取整个文件。 read() 方…

    2023年 2月 25日
    00
  • Python 读取、写入、关闭文件

    Python 文件基本操作涉及到文件的读取、写入、关闭等操作。下面对 Python 文件基本操作进行详细介绍。 打开文件 Python 打开文件使用 open() 函数,可以使用指定的模式来打开文件,常用的模式有: r:读取模式,打开文件用于读取,默认值 w:写入模式,打开文件用于写入 a:追加模式,打开文件用于追加 x:独占模式,创建一个新文件,如果文件已…

    2023年 2月 25日
    00
  • Python pickle函数详解:对象的持久化存储

    Python的pickle模块是一个用于序列化和反序列化Python对象的标准模块。它能够将Python对象转化成一系列的字节流,以便将其保存到文件或网络传输,同时也可以将字节流反序列化为Python对象。 pickle模块是Python标准库中提供的一个非常有用的工具,它支持大多数Python对象的序列化和反序列化,包括基本数据类型、集合类型、字典、自定义…

    2023年 2月 25日
    00
  • Python os.path模块的7种常用函数

    Python中的os.path模块提供了一系列用于处理路径的函数,可以帮助我们方便地操作文件路径。下面我们将介绍一些常见的函数及其用法。 os.path.join():用于连接两个或多个路径名组件,返回连接后的路径名。 import os path1 = 'C:/Users' path2 = 'John' path3 …

    2023年 2月 25日
    00