Python fileinput模块使用实例

yipeiwu_com6年前Python基础

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实现Lasso回归

解析python实现Lasso回归

Lasso原理 Lasso与弹性拟合比较python实现 import numpy as np import matplotlib.pyplot as plt from sklea...

Python正则表达式如何进行字符串替换实例

Python正则表达式在使用中会经常应用到字符串替换的代码。有很多人都不知道如何解决这个问题,下面的代码就告诉你其实这个问题无比的简单,希望你有所收获。 1.替换所有匹配的子串用news...

python得到一个excel的全部sheet标签值方法

这里需要用到python处理excel很经典的库openpyxl,安装也特别简单。window直接pip install就好了 代码在这里~ wb = openpyxl.load_w...

opencv python统计及绘制直方图的方法

opencv python统计及绘制直方图的方法

灰度直方图概括了图像的灰度级信息,简单的来说就是每个灰度级图像中的像素个数以及占有率,创建直方图无外乎两个步骤,统计直方图数据,再用绘图库绘制直方图。 统计直方图数据 首先要稍微理解一些...

从零学python系列之教你如何根据图片生成字符画

从零学python系列之教你如何根据图片生成字符画

说下思路吧: 原图->灰度->根据像素亮度-映射到指定的字符序列中->输出。字符越多,字符变化稠密。效果会更好。如果根据灰度图的像素亮度范围制作字符画,效果会更好。如果...