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实现的金山快盘的签到程序
Jan 17 Python
python实现猜数字游戏(无重复数字)示例分享
Mar 29 Python
Python检测一个对象是否为字符串类的方法
May 21 Python
Saltstack快速入门简单汇总
Mar 01 Python
Python编程实战之Oracle数据库操作示例
Jun 21 Python
详解Python3.6的py文件打包生成exe
Jul 13 Python
Python编程中flask的简介与简单使用
Dec 28 Python
详解python列表生成式和列表生成式器区别
Mar 27 Python
python 通过视频url获取视频的宽高方式
Dec 10 Python
pandas中read_csv的缺失值处理方式
Dec 19 Python
Jupyter Notebook远程登录及密码设置操作
Apr 10 Python
Pytorch使用shuffle打乱数据的操作
May 20 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获取twitter最新消息的方法
2015/04/14 PHP
php生成年月日下载列表的方法
2015/04/24 PHP
PHP实现图片批量打包下载功能
2017/03/01 PHP
PHP+原生态ajax实现的省市联动功能详解
2017/08/15 PHP
THINKPHP3.2使用soap连接webservice的解决方法
2017/12/13 PHP
JQuery 图片延迟加载并等比缩放插件
2009/11/09 Javascript
js 绑定键盘鼠标事件示例代码
2014/02/12 Javascript
利用jquery动画特效和css打造的侧边弹出垂直导航
2014/04/04 Javascript
JS与jQuery实现隔行变色的方法
2016/09/09 Javascript
JavaScript实现清空(重置)文件类型INPUT元素值的方法
2016/11/17 Javascript
JavaScript实现的XML与JSON互转功能详解
2017/02/16 Javascript
js常用的继承--组合式继承
2017/03/06 Javascript
AngularJS表单验证功能
2017/10/19 Javascript
详解angular2如何手动点击特定元素上的点击事件
2018/10/16 Javascript
详解在vue-test-utils中mock全局对象
2018/11/07 Javascript
小程序实现订单倒计时功能
2019/04/23 Javascript
nodejs实现用户登录路由功能
2019/05/22 NodeJs
基于javascript处理二进制图片流过程详解
2020/06/08 Javascript
vue使用echarts图表自适应的几种解决方案
2020/12/04 Vue.js
Python简单实现子网掩码转换的方法
2016/04/13 Python
python与php实现分割文件代码
2017/03/06 Python
离线安装Pyecharts的步骤以及依赖包流程
2020/04/23 Python
深入理解Django中内置的用户认证
2017/10/06 Python
python 获得任意路径下的文件及其根目录的方法
2019/02/16 Python
linux 下python多线程递归复制文件夹及文件夹中的文件
2020/01/02 Python
Python批量安装卸载1000个apk的方法
2020/04/10 Python
Python3 ID3决策树判断申请贷款是否成功的实现代码
2020/05/21 Python
La Senza官网:北美顶尖性感内衣品牌
2018/08/03 全球购物
荷兰度假屋租赁网站:Aan Zee
2020/02/28 全球购物
保护动物倡议书
2014/04/15 职场文书
庆祝三八妇女节标语
2014/10/09 职场文书
谢师宴学生致辞
2015/07/27 职场文书
新娘婚礼答谢词
2015/09/29 职场文书
班级管理经验交流材料
2015/11/02 职场文书
一篇文章学会Vue中间件管道
2021/06/20 Vue.js
Window server中安装Redis的超详细教程
2021/11/17 Redis