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 MD5加密实例详解
Aug 02 Python
python smtplib模块自动收发邮件功能(一)
May 22 Python
python代码 输入数字使其反向输出的方法
Dec 22 Python
django2.0扩展用户字段示例
Feb 13 Python
pyinstaller打包opencv和numpy程序运行错误解决
Aug 16 Python
windows 10 设定计划任务自动执行 python 脚本的方法
Sep 11 Python
解决Keras 与 Tensorflow 版本之间的兼容性问题
Feb 07 Python
Python OpenCV读取显示视频的方法示例
Feb 20 Python
Python统计文本词汇出现次数的实例代码
Feb 27 Python
Pytorch对Himmelblau函数的优化详解
Feb 29 Python
Python3 用matplotlib绘制sigmoid函数的案例
Dec 11 Python
使用OpenCV实现人脸图像卡通化的示例代码
Jan 15 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教程 基本语法
2009/10/23 PHP
php实现首页链接查询 友情链接检查的代码
2010/01/05 PHP
PHP实现手机归属地查询API接口实现代码
2012/08/27 PHP
php微信公众平台交互与接口详解
2016/11/28 PHP
javascript KeyDown、KeyPress和KeyUp事件的区别与联系
2009/12/03 Javascript
JavaScript Event学习第四章 传统的事件注册模型
2010/02/07 Javascript
如何让页面加载完成后执行js
2013/06/26 Javascript
利用javascript实现web页面中指定区域打印
2013/10/30 Javascript
Extjs4中tree的拖拽功能(可以两棵树之间拖拽) 简单实例
2013/12/08 Javascript
js动态往表格的td中添加图片并注册事件
2014/06/12 Javascript
js+HTML5基于过滤器从摄像头中捕获视频的方法
2015/06/16 Javascript
jquery使整个div区域可以点击的方法
2015/06/24 Javascript
jQuery form插件的使用之处理server返回的JSON, XML,HTML数据
2016/01/26 Javascript
实例讲解JavaScript中的this指向错误解决方法
2016/06/13 Javascript
详解微信小程序入门五: wxml文件引用、模版、生命周期
2017/01/20 Javascript
Javascript for in的缺陷总结
2017/02/03 Javascript
使用canvas及js简单生成验证码方法
2017/04/02 Javascript
2种在vue项目中使用百度地图的简单方法
2018/09/28 Javascript
JavaScript 中判断变量是否为数字的示例代码
2020/10/22 Javascript
[57:16]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS VG第二场
2014/05/26 DOTA
[03:07]完美世界DOTA2联赛PWL DAY10 决赛集锦
2020/11/11 DOTA
Python的Flask框架中实现登录用户的个人资料和头像的教程
2015/04/20 Python
Python求两点之间的直线距离(2种实现方法)
2019/07/07 Python
英国最大的专业户外零售商:Mountain Warehouse
2018/06/06 全球购物
可爱的童装和鞋子:Fabkids
2019/08/16 全球购物
市场安全管理制度
2014/01/26 职场文书
宿舍保安职务说明书
2014/02/25 职场文书
特教教师先进事迹
2014/05/21 职场文书
2014镇副书记群众路线专题民主生活会思想汇报
2014/09/23 职场文书
学生违反校规检讨书
2014/10/28 职场文书
2014年残疾人工作总结
2014/12/06 职场文书
2014年纠风工作总结
2014/12/08 职场文书
新郎结婚保证书
2015/02/26 职场文书
2015年建筑工作总结报告
2015/05/04 职场文书
《鲁班学艺》读后感3篇
2019/11/27 职场文书
python百行代码实现汉服圈图片爬取
2021/11/23 Python