【Python】模块之fileinput

简介: fileinput模块可以遍历文本文件的所有行.它的工作方式和readlines很类似,不同点在于,它不是将全部的行读到列表中而是创建了一个xreadlines对象.
fileinput模块可以遍历文本文件的所有行.它的工作方式和readlines很类似,不同点在于,它不是将全部的行读到列表中而是创建了一个xreadlines对象.

下面是fileinput模块中的常用函数
input()     #它会返回能够用于for循环遍历的对象.
filename() #返回当前文件的名称
lineno()    #返回当前(累计)的行数
filelineno() #返回当前文件的行数
isfirstline() #检查当前行是否是文件的第一行

#!/bin/env python
#coding=utf-8
import fileinput
import sys
import glob
import string
'''  处理一个文本文件  '''
for line in fileinput.input("tab.sh"):    
    print line
'''处理多个文本文件 并输出行号'''
for line in fileinput.input(glob.glob("*.sh")):
    if fileinput.isfirstline():
       print "------ reading %s ------\n" % fileinput.filename()  
    print str(fileinput.lineno()) + " " + line  

例子:
[root@rac1 admin]# python ftest.py    
abc_permission_collection

abc_user

abc_user_group_relationship

------ reading c.sh ------

1 c

2 cc

3 ccc

------ reading tab.sh ------

4 abc_permission_collection

5 abc_user

6 abc_user_group_relationship

[root@rac1 admin]# 
目录
相关文章
|
3月前
|
Python
Python 中常用的内置模块之`re`模块
【10月更文挑战第11天】 `re` 模块是 Python 内置的正则表达式处理工具,支持模式匹配、搜索、替换等功能。通过 `search`、`match`、`findall` 和 `sub` 等函数,结合正则表达式的元字符、分组、贪婪模式等特性,可高效完成文本处理任务。示例代码展示了基本用法,帮助快速上手。
40 1
|
8月前
|
数据采集 Python
Python HTML解析详解
Python HTML解析详解
62 0
|
存储 数据库 Python
python|浅谈Python中的pickle模块
python|浅谈Python中的pickle模块
244 0
|
Python Windows
Python中的glob库是什么?
实际项目开发中,该模块使用的非常多,原因就是它的搜索功能实在是好用。
267 0
|
JavaScript 前端开发 Python
Python JavaScript2: 函数
Python JavaScript2: 函数
160 0
|
Unix Shell API
每周一个 Python 模块 | glob
使用 Unix shell 规则查找与模式匹配的文件名。 尽管 glob API 不多,但该模块具有很强的功能。当程序需要通过名称与模式匹配的方式查找文件列表时,它很有用。要创建一个文件列表,这些文件名具有特定的扩展名,前缀或中间的任何公共字符串,这个时候,使用glob而不是编写自定义代码来扫描目录内容。
137 0
|
Python 容器
每周一个 Python 模块 | copy
copy 模块包括两个功能,copy() 和 deepcopy(),用于复制现有对象。
118 0
|
Python
第43天:Python filecmp&difflib模块
第43天:Python filecmp&difflib模块
169 0
|
Java Shell 测试技术
Python中fileinput模块使用
fileinput模块可以对一个或多个文件中的内容进行迭代、遍历等操作。该模块的input()函数有点类似文件 readlines()方法,区别在于前者是一个迭代对象,需要用for循环迭代,后者是一次性读取所有行。
936 0