Posted in Python onMay 28, 2015
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]#
Python fileinput模块使用实例
- Author -
junjie声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@