当前位置:首页 > 科技  > 软件

Python中很少人会用的Fileinput模块详解

来源: 责编: 时间:2023-12-02 09:42:45 422观看
导读当涉及到文件处理和输入流时,Python中的fileinput模块是一个非常有用的工具。fileinput模块允许我们轻松地迭代处理多个文件,同时还可以处理标准输入流。以下是Python中fileinput模块的五个常见用法,每个用法都附带有代

当涉及到文件处理和输入流时,Python中的fileinput模块是一个非常有用的工具。fileinput模块允许我们轻松地迭代处理多个文件,同时还可以处理标准输入流。以下是Python中fileinput模块的五个常见用法,每个用法都附带有代码和输出示例。TEm28资讯网——每日最新资讯28at.com

1. 逐行迭代文件

fileinput模块可以用于逐行迭代处理文件中的内容。下面的例子演示了如何逐行读取文件,并打印每行的内容:TEm28资讯网——每日最新资讯28at.com

import fileinputfor line in fileinput.input('data.txt'):    print(line, end='')

输出:TEm28资讯网——每日最新资讯28at.com

Line 1Line 2Line 3

2. 替换文件中的文本

fileinput模块还可以用于在文件中替换指定的文本。下面的例子演示了如何将文件中的"old"替换为"new":TEm28资讯网——每日最新资讯28at.com

import fileinputfor line in fileinput.input('data.txt', inplace=True):    line = line.replace('old', 'new')    print(line, end='')

输出(文件data.txt被修改):TEm28资讯网——每日最新资讯28at.com

Line 1Line 2Line 3

3. 处理多个文件

fileinput模块可以处理多个文件,而不仅限于单个文件。下面的例子演示了如何逐行读取多个文件的内容:TEm28资讯网——每日最新资讯28at.com

import fileinputfor line in fileinput.input(['file1.txt', 'file2.txt', 'file3.txt']):    print(line, end='')

输出:TEm28资讯网——每日最新资讯28at.com

File 1 Line 1File 1 Line 2File 1 Line 3File 2 Line 1File 2 Line 2File 2 Line 3File 3 Line 1File 3 Line 2File 3 Line 3

4. 记录当前文件名和行号

fileinput模块可以记录当前处理的文件名和行号。下面的例子演示了如何打印每行的文件名和行号:TEm28资讯网——每日最新资讯28at.com

import fileinputfor line in fileinput.input('data.txt'):    print(f'File: {fileinput.filename()}, Line: {fileinput.filelineno()}, Content: {line}', end='')

输出:TEm28资讯网——每日最新资讯28at.com

File: data.txt, Line: 1, Content: Line 1File: data.txt, Line: 2, Content: Line 2File: data.txt, Line: 3, Content: Line 3

5. 处理标准输入流

除了处理文件,fileinput模块还可以处理标准输入流。下面的例子演示了如何读取标准输入中的内容:TEm28资讯网——每日最新资讯28at.com

import fileinputfor line in fileinput.input():    print(line, end='')

输入(从标准输入输入):TEm28资讯网——每日最新资讯28at.com

Input Line 1Input Line 2Input Line 3

输出:TEm28资讯网——每日最新资讯28at.com

Input Line 1Input Line 2Input Line 3

TEm28资讯网——每日最新资讯28at.com

以上是Python中fileinput模块的五个常见用法示例。通过灵活使用fileinput模块,您可以轻松地处理文件和输入流,并进行各种文本操作。无论是逐行迭代、替换文本还是处理多个文件,fileinput模块为文件处理提供了强大而便捷的功能。TEm28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-35989-0.htmlPython中很少人会用的Fileinput模块详解

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 小米公司发言人:关于雷军“冰冷的 40 亿”的传闻纯属子虚乌有,人生不是爽文

下一篇: 十个必知必会的云原生架构设计模式

标签:
  • 热门焦点
  • 一加Ace2 Pro真机揭晓 钛空灰配色质感拉满

    终于,在经过了几波预热之后,一加Ace2 Pro的外观真机图在网上出现了。还是博主数码闲聊站曝光的,这次的外观设计还是延续了一加11的方案,只是细节上有了调整,例如新加入了钛空灰
  • 六大权益!华为8月服务日开启:手机免费贴膜、维修免人工费

    8月5日消息,一年一度的华为开发者大会2023(Together)日前在松山湖拉开帷幕,与此同时,华为8月服务日也式开启,到店可享六大专属权益。华为用户可在华为商城Ap
  • K8S | Service服务发现

    一、背景在微服务架构中,这里以开发环境「Dev」为基础来描述,在K8S集群中通常会开放:路由网关、注册中心、配置中心等相关服务,可以被集群外部访问;图片对于测试「Tes」环境或者
  • 如何使用JavaScript创建一只图像放大镜?

    译者 | 布加迪审校 | 重楼如果您曾经浏览过购物网站,可能遇到过图像放大功能。它可以让您放大图像的特定区域,以便浏览。结合这个小小的重要功能可以大大改善您网站的用户体验
  • 三万字盘点 Spring 九大核心基础功能

    大家好,我是三友~~今天来跟大家聊一聊Spring的9大核心基础功能。话不多说,先上目录:图片友情提示,本文过长,建议收藏,嘿嘿嘿!一、资源管理资源管理是Spring的一个核心的基础功能,不
  • 三分钟白话RocketMQ系列—— 如何发送消息

    我们知道RocketMQ主要分为消息 生产、存储(消息堆积)、消费 三大块领域。那接下来,我们白话一下,RocketMQ是如何发送消息的,揭秘消息生产全过程。注意,如果白话中不小心提到相关代
  • 三星推出Galaxy Tab S9系列平板电脑以及Galaxy Watch6系列智能手表

    2023年7月26日,三星电子正式发布了Galaxy Z Flip5与Galaxy Z Fold5。除此之外,Galaxy Tab S9系列平板电脑以及三星Galaxy Watch6系列智能手表也同期
  • iQOO Neo8系列新品发布会

    旗舰双芯 更强更Pro
  • “买真退假” 这种“羊毛”不能薅

    □ 法治日报 记者 王春   □ 本报通讯员 胡佳丽  2020年初,还在上大学的小东加入了一个大学生兼职QQ群。群主“七王”在群里介绍一些刷单赚
Top