Python-文件对象常用的API

来源:互联网 发布:诺基亚按键机java游戏 编辑:程序博客网 时间:2024/05/21 07:06

一、概述

Python的文件对象是由C语言的stdio包实现,并且可以用内置的open()函数创建。

文件对象会由一些其它内置的函数和方法返回,如os.popen()和os.fdopen()以及套接字对象的makefile()方法。临时文件可以通过tempfile模块创建,高级的文件操作如复制、移动和删除文件和目录可以通过shutil模块完成。


当文件操作由于I/O原因失败时,将引发IOError异常。它包括出于某种原因该操作未定义的情况,比如在tty设备上seek()或写入只为读取打开的文件。

文件具有以下方法:


二、API

1、file.close()

关闭文件。
关闭的文件无法再读取或写入。关闭文件后,对该文件进行任何操作将引发ValueError异常,多次调用close()是允许的。
到Python 2.5,如果你使用with语句,你可以避免显式调用此方法。例如,当with代码块退出时,下面的代码将自动关闭f:
from __future__ import with_statement # This isn't required in Python 2.6with open("hello.txt") as f:    for line in f:        print line,

2、file.flush()

刷新缓冲区。
类似stdio的fflush()。在某些类文件对象上,这个操作可能不存在。

3、file.isatty()

如果文件连接到一个(类)tty的设备,返回True,否则返回False。

4、file.next()

返回下一个输入行。

5、file.read([size])

最多从文件读取size字节。如果size参数为负或被省略,读取所有数据,直到达到了EOF。
注 此函数是对底层C函数fread() )的简单封装,并且在某些极端情况下和C函数有相同的行为,例如对于EOF是否被缓存。

6、file.readline([size])

从文件中读取一整行,换行符包含在字符串中 。
如果size参数存在且非负数,返回的字符串可能不是完整的一行。

7、file.seek(offset[, whence])

设置光标的位置,类似于stdio的 fseek()。没有返回值。

8、file.tell()

返回光标的位置,类似于stdiodeftell()。

9、file.write(str)

向文件中写入字符串。无返回值。
因为要进行缓冲,该字符串可能不会在文件中显示,直到flush()或close ()方法被调用之后才会在文件中显示写入的字符串。
0 0
原创粉丝点击