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 相关文章推荐
在Django的视图(View)外使用Session的方法
Jul 23 Python
浅谈python类属性的访问、设置和删除方法
Jul 25 Python
详解python 拆包可迭代数据如tuple, list
Dec 29 Python
django 2.0更新的10条注意事项总结
Jan 05 Python
Python数据分析库pandas基本操作方法
Apr 08 Python
Python处理中文标点符号大集合
May 14 Python
python使用epoll实现服务端的方法
Oct 16 Python
pandas实现将dataframe满足某一条件的值选出
Jun 12 Python
Django rest framework jwt的使用方法详解
Aug 08 Python
python高阶函数map()和reduce()实例解析
Mar 16 Python
如何卸载python插件
Jul 08 Python
Python中logging日志记录到文件及自动分割的操作代码
Aug 05 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获取谷歌PR值算法,附上php查询PR值代码示例
2011/12/25 PHP
查找mysql字段中固定字符串并替换的几个方法
2012/09/23 PHP
PHP中unset,array_splice删除数组中元素的区别
2014/07/28 PHP
Yii2第三方类库插件Imagine的安装和使用
2017/07/06 PHP
在laravel中实现将查询的对象转换为多维数组的函数
2019/10/21 PHP
Js如何判断客户端是PC还是手持设备简单分析
2012/11/22 Javascript
HTML复选框和单选框 checkbox和radio事件介绍
2012/12/12 Javascript
JS 实现Table相同行的单元格自动合并示例代码
2013/08/27 Javascript
jQuery中:empty选择器用法实例
2014/12/30 Javascript
JS往数组中添加项性能分析
2015/02/25 Javascript
Bootstrap布局方式详解
2016/05/27 Javascript
jQuery制作圣诞主题页面 更像是爱情影集
2016/08/10 Javascript
React中使用collections时key的重要性详解
2017/08/07 Javascript
微信小程序模板(template)使用详解
2018/01/31 Javascript
vue3.0 CLI - 2.6 - 组件的复用入门教程
2018/09/14 Javascript
JQuery Ajax跨域调用和非跨域调用问题实例分析
2019/04/16 jQuery
vue-resource post数据时碰到Django csrf问题的解决
2020/03/13 Javascript
[46:14]完美世界DOTA2联赛PWL S3 Magma vs INK ICE 第一场 12.11
2020/12/16 DOTA
python脚本实现统计日志文件中的ip访问次数代码分享
2014/08/06 Python
编写Python脚本来获取Google搜索结果的示例
2015/05/04 Python
Python中的heapq模块源码详析
2019/01/08 Python
Python内置加密模块用法解析
2019/11/25 Python
Python变量作用域LEGB用法解析
2020/02/04 Python
基于python求两个列表的并集.交集.差集
2020/02/10 Python
tensorflow实现残差网络方式(mnist数据集)
2020/05/26 Python
Python列表推导式实现代码实例
2020/09/09 Python
加州风格的游泳和沙滩装品牌:Cupshe
2019/06/10 全球购物
Java中会存在内存泄漏吗,请简单描述
2016/12/22 面试题
新闻记者实习自我鉴定
2013/09/19 职场文书
高中生的自我鉴定范文
2014/01/24 职场文书
餐厅考勤管理制度
2014/01/28 职场文书
社区消防工作实施方案
2014/03/21 职场文书
旷工检讨书1000字
2015/01/01 职场文书
2015年幼儿园班主任工作总结
2015/05/12 职场文书
药房管理制度范本
2015/08/06 职场文书
一篇文章看懂MySQL主从复制与读写分离
2021/11/07 MySQL