返回顶部
首页 > 资讯 > 后端开发 > Python >python模块fileinput
  • 889
分享到

python模块fileinput

模块pythonfileinput 2023-01-31 06:01:35 889人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

      在python脚本语言中的fileinput模块可以对一个或多个文件的内容进行迭代,编历操作.常用的函数:     fileinput.input()          #读取文件的内容     fileinput.filena

      在python脚本语言中的fileinput模块可以对一个或多个文件的内容进行迭代,编历操作.

常用的函数:

     fileinput.input()          #读取文件的内容

     fileinput.filename()    #文件的名称

     fileinput.lineno()        #当前读取行的数量

     fileinput.filelineno()   #读取行的行号

     fileinput.isfirstline()   #当前行是否是文件第一行

     fileinput.isstdin()       #判断最后一行是否从stdin中读取

     fileinput.close()         #关闭队列


1.加载fileinput模块和使用input属性

格式:

input(files=None, inplace=0, backup='', bufsize=0, mode='r', openhook=None)
files:文件的路径列表,默认是stdin方式,多文件['1.txt','2.txt']写成列表

inplace:是否将标准输出的结果写回文件

backup:备份文件的扩展名,只定义扩展名

bufsize:缓冲区的大小,默认是0

mode:读写模式,默认为只读

openhook:控制打开的文件


2.备份文件内容

[root@node1 ~]# vim 1.py

#!/bin/env Python
#! _*_ coding:utf8 _*
import fileinput

for line in fileinput.input('qwe.py','/root/1.txt','.back'):     #.back是备份后文件的后缀
    print line,        #后面逗号表示不换行

[root@node1 ~]# python 1.py  qwe.py
[root@node1 ~]# ll qwe.py*
-rwxr-xr-x 1 root root 315 Jun 21 18:10 qwe.py
-rwxr-xr-x 1 root root 315 Jun 21 18:07 qwe.py.back
[root@node1 ~]#

3.格式化输出

[root@node1 ~]# vim 1.py

#!/bin/env python
#! _*_ coding:utf8 _*
import fileinput

for i in fileinput.input():
    print fileinput.filename(),'|','Line Number:','|',fileinput.lineno(),'|:',i.lstrip(),
[root@node1 ~]# python 1.py  qwe.py
qwe.py | Line Number: | 1 |: #!/bin/env python
qwe.py | Line Number: | 2 |: #!-*- coding:UTF-8 -*-
qwe.py | Line Number: | 3 |:  qwe.py | Line Number: | 4 |: def lines(file):
qwe.py | Line Number: | 5 |: for line for file:
qwe.py | Line Number: | 6 |: yield line
qwe.py | Line Number: | 7 |: yield '\n'
qwe.py | Line Number: | 8 |:  qwe.py | Line Number: | 9 |: def blocks(file):
qwe.py | Line Number: | 10 |: blosk=[]
qwe.py | Line Number: | 11 |: for line in lines(file):
qwe.py | Line Number: | 12 |: if line.strip():
qwe.py | Line Number: | 13 |: block.append(line)
qwe.py | Line Number: | 14 |: elif block:
qwe.py | Line Number: | 15 |: yield ''.join(block).strip()
qwe.py | Line Number: | 16 |: block=[]

4.修改文件内容

[root@node1 ~]# vim 1.py

def process(line):
    return line.rstrip()+'   line'

for line in fileinput.input(['1.txt','2.txt'],inplace=1):
    print process(line)
[root@node1 ~]# python 1.py 1.txt
[root@node1 ~]# cat 1.txt
1111   line
2222   line
3333   line
4444   line
[root@node1 ~]# cat 2.txt
777   line
888   line
999   line
[root@node1 ~]#


5.查找文件中的内容

[root@node1 ~]# vim 1.py

#!/bin/env python
#! _*_ coding:utf8 _*
import fileinput
import sys
import re


a='d{2}:d{2}:d{2}'
for i in fileinput.input('/var/log/yum.log',backup='.back',inplace=1):
    if re.search(a,i):
        sys.stdout.write(line)
[root@node1 ~]# python 1.py
[root@node1 ~]# ll /var/log/yum.log*
-rw-------  1 root root     0 Jun 21 18:36 /var/log/yum.log
-rw-------  1 root root   640 Jun  3 11:39 /var/log/yum.log.back
[root@node1 ~]#

--结束END--

本文标题: python模块fileinput

本文链接: https://lsjlt.com/news/190200.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python模块fileinput
          在python脚本语言中的fileinput模块可以对一个或多个文件的内容进行迭代,编历操作.常用的函数:     fileinput.input()          #读取文件的内容     fileinput.filena...
    99+
    2023-01-31
    模块 python fileinput
  • Python中 fileinput模块的作用是什么
    本篇文章为大家展示了Python中 fileinput模块的作用是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一 简介  fileinput 是python 提供的一个可以...
    99+
    2023-06-04
  • Python使用os模块和fileinput模块来操作文件目录
    os模块 在python编程中,我们会经常使用到文件和目录,这些操作python提供一个os模块,里面有很多操作文件和目录的函数. 下面介绍os的常用功能 1.获取当前路径 >>> o...
    99+
    2022-06-04
    模块 操作 文件
  • python文件替代fileinput模
    一,文件替代:此时对文件中的内容不真实替代,跟sed 不加-i,并且在屏幕上会打印出来import fileinput for line in fileinput.input('if.py'): line = line.re...
    99+
    2023-01-31
    文件 python fileinput
  • Python模块:time模块
    time模块:python中处理时间的基础模块,有时间戳,元组,自定义,三种时间表现形式。python中时间戳的值是以1970年1月1日0点开始计算的,单位是秒。时间戳:就是两个时间差的数值。时区:传说中在开发服务器/客户端程序时,时区不一...
    99+
    2023-01-31
    模块 Python time
  • python模块:smtplib模块
    1.使用本地的sendmail协议进行邮件发送格式(1):smtpObj=smtplib.SMTP([host [,port [,local_hostname]]])host:SMTP服务器主机的IP地址或者是域名port:服务的端口号(默...
    99+
    2023-01-31
    模块 python smtplib
  • 释译python fileinput中的
    fileinput模块提供处理一个或多个文本文件的功能, 可以通过使用for..in来循环读取一个或多个文本文件内容.例子中的文件,1.txt1a2a3a4a2.txt1b2bDESCRIPTION   Typical use is:   ...
    99+
    2023-01-31
    释译 python fileinput
  • python模块学习----nmap模块
    安装nmap模块:pip install python_nmanmap模块说明:python-nmap是一个帮助使用nmap端口扫描器的python库。它允许轻松操纵nmap扫描结果,并且将是一个完美的选择,为需要自动完成扫描任务的系统管理...
    99+
    2023-01-31
    模块 python nmap
  • 使用Python模块:struct模块
    Python没有提供直接的将用户定义的数据类型和文件IO关联起来的功能,但是它提供了struct库(是一个内置库)——我们可以以二进制模式来写这些数据(有趣的是,它真的是设计来讲文本数据写为缓存的) 1)bytes、str...
    99+
    2023-01-31
    模块 Python struct
  • python加密模块-hashlib模块
    hashlib模块 用于加密相关的操作,3.X里代替了md5模块和sha模块,主要提供SHA1,SHA224,SHA256,SHA384,SHA512,MD5算法 (sha比md5 更复杂、md5 不能反解) 具体应用:用于网站防篡改。具...
    99+
    2023-01-31
    模块 python hashlib
  • python 模块
    python的模块分为2种:1.标准库(不需要安装,直接导入就可以使用的)2.第三方库(必须要手动安装的)先来介绍2个标准库:sys和os#!/usr/bin/env python# coding: utf-8...
    99+
    2023-01-30
    模块 python
  • Python模块
    初步认识 安装完python后,python自带一部分模块,自带的模块又称作内置模块。其中一部分模块在路径Lib下。(这里的文件夹可以看做包,可以把多个模块放进一个包里) 从模块的来源来讲,可以分三种:内置模块、自定义模块(自己定义的)...
    99+
    2023-01-30
    模块 Python
  • python-模块
    一:模块的基本认识: 内置模块 内置模块是python自带的功能,在使用内置模块相应功能时,需要先导入再使用    第三方模块 下载-->安装-->使用 1.找到python所在的根目录-->再找到Scrip...
    99+
    2023-01-31
    模块 python
  • python - 模块
    参考:https://www.cnblogs.com/nulige/p/6166205.html一、模块介绍Python Module(模块),就是一个保存了Python代码的文件。模块能定义函数,类和变量。模块里也能包含可执行的代码。文件...
    99+
    2023-01-31
    模块 python
  • python常见模块之OS模块和time模块
    一、OS模块概述 Python OS模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。 二、常用方法 三、OS模...
    99+
    2024-04-02
  • Python中的sys模块、random模块和math模块
    一、sys运行时环境模块 sys模块负责程序与python解释器的交互,提供了一系列的函数和变量,用于操控python的运行时环境。 用法: sys.argv:命令行参数List,第...
    99+
    2024-04-02
  • Python基础之hashlib模块subprocess模块logging模块
    目录一、hashlib模块基本操作与用法二、subprocess模块简介基本操作与用法三、logging模块简介基本操作与用法一、hashlib模块 什么是哈希模块: hashlib...
    99+
    2024-04-02
  • python数学模块(math/decimal模块)
    目录一, math模块2. math库常用函数3.math库使用示例二, decimal模块1. 什么时候使用decimal2. 使用decimal3. decimal使用示例一, ...
    99+
    2024-04-02
  • Python时间模块之datetime模块
    目录 简介 函数介绍及运用 date:日期类 1.获取当前时间  2.日期对象的属性 3.date类中时间和时间戳的转换: 4.修改日期使用replace方法  time:时间类  time类操作 datetime:日期时间类 timede...
    99+
    2023-09-12
    python datetime python 日期时间
  • Python模块学习之IPy模块
    IP地址规划是网络设计中非常重要的一个环节,规划的好坏会直接影响路由协议算法的效率,包括网络性能、可扩展性等方面,在这个过程当中,免不了要计算大量的IP地址,包括网段、网络掩码、广播地址、子网数、IP类型等。Python提供了一个强大的第...
    99+
    2023-01-31
    模块 Python IPy
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作