ubuntu 16.04LTS系统
交互开发环境IPython 2.4.1
Python 2.7.12
本节主要介绍os模块对文件对象及描述符的操作:1:fdopen(fd[, mode[, bufsize]])功能:返回一个文件对象,该对象指向文件描述符fd,mode和bufsize参数和内建函数open()一致.需要注意的是如果fdopen抛出异常,则fd不会自动关闭;mode参数:从2.3版本起,可以指定未[r,w,a,r+,w+,a+,b](参见open的描述)否则会抛出异常.bufsize参数:指定文件缓存区大小.bufsize=0表示不缓存,bufsize=1表示缓存,如果bufsize>=1,则表示缓存多少字节,如果bufsize<0,表示用系统默认缓存区大小.
2:popen(command[, mode[, bufsize]])功能:根据命令打开一个管道,返回值是指向管道的文件对象.command参数:可用的命令.mode参数:模式只有读和写,其中读是默认的.bufsize参数:指定文件缓存区大小.bufsize=0表示不缓存,bufsize=1表示缓存,如果bufsize>=1,则表示缓存多少字节,如果bufsize<0,表示用系统默认缓存区大小.
3:tmpfile()功能:返回一个模式为(w+b)的临时文件对象.注意:指向的文件没有目录入口,如果文件对象失效,则会自动删除文件.
4:close(fd)功能:关闭文件描述符fd.
5:closerange(fd_low, fd_high)功能:关闭指定的所有文件描述符[fd_low,fd_high).注意:该方法等同循环调用close函数关闭文件描述符.
6:dup(fd)功能:复制给定的文件描述符fd.
7:dup2(fd, fd2)功能:把给定的文件描述符fd指向的内容复制到新的文件描述符fd2.注意:可以理解为C语言的指针复制.
如果创建多个文件描述符,推荐用函数closerange进行关闭.