Python fileinput模块使用实例

yipeiwu_com6年前Python基础

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文档

跟老齐学Python之Python文档

文档很重要。独孤九剑的剑诀、易筋经的心法、写着辟邪剑谱的袈裟,这些都是文档。连那些大牛人都要这些文档,更何况我们呢?所以,文档是很重要的。 文档,说白了就是用word(这个最多了)等(注...

Python3.5运算符操作实例详解

Python3.5运算符操作实例详解

本文实例讲述了Python3.5运算符操作。分享给大家供大家参考,具体如下: 1、运算符的分类 2、算术运算符 示例代码: #!/usr/bin/env python #...

Django文件存储 自己定制存储系统解析

要自己写一个存储系统,可以依照以下步骤: 1.写一个继承自django.core.files.storage.Storage的子类。 from django.core.files.s...

python简单实现基于SSL的IRC bot实例

本文实例讲述了python简单实现基于SSL的 IRC bot。分享给大家供大家参考。具体如下: #!/usr/bin/python # -*- coding: utf8 -*- i...

Python迭代器与生成器用法实例分析

本文实例讲述了Python迭代器与生成器用法。分享给大家供大家参考,具体如下: 迭代器,迭代的工具 什么是迭代器? 指的是一个重复的过程,每一次重复称为一次迭代,并且每一次重复的结果是...