Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1155899
  • 博文数量: 185
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 2650
  • 用 户 组: 普通用户
  • 注册时间: 2016-07-01 13:46
个人简介

鸟在笼中,恨关羽不能张飞;Survival of the fittest

文章分类

全部博文(185)

分类: Python/Ruby

2012-05-16 11:03:24

fileinput模块提供处理一个或多个文本文件的功能, 可以通过使用for..in来循环读取一个或多个文本文件内容.
import fileinput
import sys
import glob
import string

for line in fileinput.input("test.txt"):     #处理一个文本文件
    print line

for line in fileinput.input(glob.glob("samples/*.txt")):  #处理多个文本文件
    if fileinput.isfirstline():
       print "------ reading %s ------\n" % fileinput.filename()    #获取文件名称
    print str(fileinput.lineno()) + " " + string.upper(line)  #获取行号和内容, 注意这里的行号是继前面文件行号来处理的,而不是重新开始计算


tempfile模块提供给你一个快速创建一个命名唯一的临时文件

import tempfile
import os

tempf = tempfile.mktemp(dir="D:/")

print "tempfile", "=>", tempf

file = open(tempf, "w+b")
file.write("*" * 1000)
file.seek(0)
print len(file.read()), "bytes"
file.close()

try:
    os.remove(tempf)    #用完以后要注意删除临时文件
except OSError:
    pass


当然你还可以通过file = tempfile.TemporaryFile()直接为你创建一个临时文件,并且打开.

阅读(4966) | 评论(0) | 转发(2) |
给主人留下些什么吧!~~