标准网站优势,网站设计的内容有哪些,宾馆管理系统,如何申请自己的网站空间文件描述字(file descriptor#xff0c;fd)是系统中用来唯一记录当前已经打开的文件的标识号#xff0c;fd是一个整数。除了file对象外#xff0c;Python还提供对fd的操作#xff0c;对fd的操作更加底层#xff0c;fd和Python中的file对象是不同的概念。在介绍file对象时已…文件描述字(file descriptorfd)是系统中用来唯一记录当前已经打开的文件的标识号fd是一个整数。除了file对象外Python还提供对fd的操作对fd的操作更加底层fd和Python中的file对象是不同的概念。在介绍file对象时已经提过调用 f.fileno() 可以获得一个文件对象的fd也可以在一个已有的 fd 上在封装一个 file 对象f os.fdopen(fd)。一些fd是一个进程创建时事先分配好的0——进程的stdin1——进程的stdout2——进程的stderrPython中的os模块对于fd提供了如下的方法1. 关闭 fdos.close(fd)2. 复制fdos.dup(fd)返回一个新的fd1这个fd1复制了参数fd。3. 复制fdos.dup2(fd, fd2)将 fd 复制到 fd2如果 fd2 已经打开则首先关闭它。4. 从 fd 到 file 对象os.fdopen(fd, moder, bufsize-1)返回一个封装了fd的Python file 对象参数 mode 和 bufsize 和内置的open()函数中的对应参数含义相同。5. 从 fd 获得文件的各种属性os.fstat(fd)返回一个 stat_result 类型的实例 x和os.stat(path)返回的类型相同只是这里是通过一个 fd 获得对应文件的相关属性。6. 改变 fd 对应文件的当前位置os.lseek(fd, pos, how)效果同 f.seek(pos, how)参数 how 指定了参照点一共三种分别是os.SEEK_SET 0 (文件起始)、os.SEEK_CUR 1(当前位置)和os.SEEK_END 2(文件末尾).没有类似 f.tell() 这种可以直接使用 fd 获得文件当前位置的函数实际上使用 os.lseek() 就可以自己实现一个os.lseek(fd, 0, os.SEEK_CUR)就可以返回当前fd 对应文件的位置且不会对原文件造成影响。7. 打开文件获得fdos.open(file, flags, mode0777本文地址http://itbyc.com/Python/21845.html转载请注明出处。