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对象体系深入分析
Oct 28 Python
Python中使用pprint函数进行格式化输出的教程
Apr 07 Python
Python列表和元组的定义与使用操作示例
Jul 26 Python
Python实现深度遍历和广度遍历的方法
Jan 22 Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
Nov 30 Python
Python调用Windows API函数编写录音机和音乐播放器功能
Jan 05 Python
pycharm内无法import已安装的模块问题解决
Feb 12 Python
Jupyter Notebook折叠输出的内容实例
Apr 22 Python
Python 实现一行输入多个数字(用空格隔开)
Apr 29 Python
Python如何爬取qq音乐歌词到本地
Jun 01 Python
用pandas划分数据集实现训练集和测试集
Jul 20 Python
Python中json.load()和json.loads()有哪些区别
Jun 07 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 Ubb代码编辑器函数代码
2012/07/05 PHP
使用xampp搭建运行php虚拟主机的详细步骤
2015/10/21 PHP
javascript globalStorage类代码
2009/06/04 Javascript
event对象的方法 兼容多浏览器
2009/06/27 Javascript
基于jquery实现的上传图片及图片大小验证、图片预览效果代码
2011/04/12 Javascript
javascript 判断中文字符长度的函数代码
2012/08/27 Javascript
使用js如何实现全选与全不选
2013/12/30 Javascript
基于jQuery实现最基本的淡入淡出效果实例
2015/02/02 Javascript
详解jQuery中的元素的属性和相关操作
2015/08/14 Javascript
详解JavaScript编程中正则表达式的使用
2015/10/25 Javascript
jQuery实现form表单元素序列化为json对象的方法
2015/12/09 Javascript
JavaScript 对象详细整理总结
2016/09/29 Javascript
jquery获取点击控件的绝对位置简单实例
2016/10/13 Javascript
vue 和vue-touch 实现移动端左右导航效果(仿京东移动站导航)
2017/04/22 Javascript
AngularJS全局警告框实现方法示例
2017/05/18 Javascript
vue实现微信分享朋友圈,发送朋友的示例讲解
2018/02/10 Javascript
vue-video-player 通过自定义按钮组件实现全屏切换效果【推荐】
2018/08/29 Javascript
node.js ws模块搭建websocket服务端的方法示例
2019/04/25 Javascript
使用watch在微信小程序中实现全局状态共享
2019/06/03 Javascript
vue实现滑动超出指定距离回顶部功能
2019/07/31 Javascript
js实现浏览器打印功能的示例代码
2020/07/15 Javascript
Python version 2.7 required, which was not found in the registry
2014/08/26 Python
python3实现暴力穷举博客园密码
2016/06/19 Python
python中星号变量的几种特殊用法
2016/09/07 Python
解决uWSGI的编码问题详解
2017/03/24 Python
Python异步编程之协程任务的调度操作实例分析
2020/02/01 Python
基于Tensorflow批量数据的输入实现方式
2020/02/05 Python
css3实现3D文本悬停改变效果的示例代码
2019/01/16 HTML / CSS
Bjorn Borg官方网上商店:国际运动时尚品牌
2016/08/27 全球购物
面向对象设计的原则是什么
2013/02/13 面试题
WSDL的操作类型主要有几种
2013/07/19 面试题
小学模范班主任事迹材料
2014/05/13 职场文书
服装仓管员岗位职责
2014/06/17 职场文书
师德师风自我剖析材料
2014/09/27 职场文书
2015年个人自我剖析材料
2014/12/29 职场文书
css3 实现文字闪烁效果的三种方式示例代码
2021/04/25 HTML / CSS