Python fileinput模块使用实例


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 相关文章推荐
python实现搜索本地文件信息写入文件的方法
Feb 22 Python
详解Python使用tensorflow入门指南
Feb 09 Python
Python实现读写INI配置文件的方法示例
Jun 09 Python
python输出100以内的质数与合数实例代码
Jul 08 Python
利用django-suit模板添加自定义的菜单、页面及设置访问权限
Jul 13 Python
Python在for循环中更改list值的方法【推荐】
Aug 17 Python
python3使用flask编写注册post接口的方法
Dec 28 Python
详解python函数的闭包问题(内部函数与外部函数详述)
May 17 Python
Python任意字符串转16, 32, 64进制的方法
Jun 12 Python
Python 获取命令行参数内容及参数个数的实例
Dec 20 Python
python 实现保存最新的三份文件,其余的都删掉
Dec 22 Python
完美解决keras保存好的model不能成功加载问题
Jun 11 Python
Python sys.argv用法实例
May 28 #Python
Python中exit、return、sys.exit()等使用实例和区别
May 28 #Python
Python中的with...as用法介绍
May 28 #Python
python关键字and和or用法实例
May 28 #Python
Python yield 使用浅析
May 28 #Python
Python中super的用法实例
May 28 #Python
Python中的super用法详解
May 28 #Python
You might like
php生成短域名函数
2015/03/23 PHP
Yii2.0预定义的别名功能小结
2016/07/04 PHP
PHP strripos函数用法总结
2019/02/11 PHP
Laravel框架Eloquent ORM简介、模型建立及查询数据操作详解
2019/12/04 PHP
音乐播放用的的几个函数
2006/09/07 Javascript
JQuery 学习笔记 选择器之二
2009/07/23 Javascript
javascript面向对象之Javascript 继承
2010/05/04 Javascript
Javascript玩转继承(一)
2014/05/08 Javascript
自定义jquery模态窗口插件无法在顶层窗口显示问题
2014/05/29 Javascript
JavaScript转换与解析JSON方法实例详解
2015/11/24 Javascript
JavaScript中iframe实现局部刷新的几种方法汇总
2016/01/06 Javascript
JavaScript制作简单分页插件
2016/09/11 Javascript
JS冒泡事件与事件捕获实例详解
2016/11/25 Javascript
jQuery中的on与bind绑定事件区别实例详解
2017/02/28 Javascript
原生js实现吸顶效果
2017/03/13 Javascript
将 vue 生成的 js 上传到七牛的实例
2017/07/28 Javascript
angularjs2 ng2 密码隐藏显示的实例代码
2017/08/01 Javascript
webpack构建换肤功能的思路详解
2017/11/27 Javascript
微信小程序日历组件使用方法详解
2018/12/29 Javascript
jQuery Raty星级评分插件使用方法实例分析
2019/11/25 jQuery
Nuxt配置Element-UI按需引入的操作方法
2020/07/06 Javascript
[02:07]2018DOTA2亚洲邀请赛主赛事第三日五佳镜头 fy极限反杀
2018/04/06 DOTA
[52:03]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第三场 1月31日
2021/03/11 DOTA
php使用递归与迭代实现快速排序示例
2014/01/23 Python
Python判断文本中消息重复次数的方法
2016/04/27 Python
使用matlab 判断两个矩阵是否相等的实例
2020/05/11 Python
python 基于wx实现音乐播放
2020/11/24 Python
html5使用html2canvas实现浏览器截图的示例
2017/08/31 HTML / CSS
EntityManager都有哪些方法
2013/11/01 面试题
平面设计岗位职责
2013/12/14 职场文书
环境科学专业个人求职信
2013/12/15 职场文书
开办化妆品公司创业计划书
2013/12/26 职场文书
司法局群众路线教育实践活动整改措施
2014/09/17 职场文书
科级干部群众路线教育实践活动对照检查材料思想汇报
2014/09/20 职场文书
施工安全协议书范本
2014/09/26 职场文书
销售内勤岗位职责
2015/02/10 职场文书