本文摘自php中文网,作者爱喝马黛茶的安东尼,侵删。
文件描述字(file descriptor,fd)是系统中用来唯一记录当前已经打开的文件的标识号,fd是一个整数。除了file对象外,Python还提供对fd的操作,对fd的操作更加底层,fd和Python中的file对象是不同的概念。在介绍file对象时已经提过,调用 f.fileno() 可以获得一个文件对象的fd,也可以在一个已有的 fd 上在封装一个 file 对象:f = os.fdopen(fd)。
一些fd是一个进程创建时事先分配好的:
0——进程的stdin
1——进程的stdout
2——进程的stderr
Python中的os模块对于fd提供了如下的方法:
1. 关闭 fd
1 |
|
2. 复制fd
1 |
|
返回一个新的fd1,这个fd1复制了参数fd。
3. 复制fd
1 |
|
将 fd 复制到 fd2,如果 fd2 已经打开,则首先关闭它。
4. 从 fd 到 file 对象
1 |
|
返回一个封装了fd的Python file 对象,参数 mode 和 bufsize 和内置的open()函数中的对应参数含义相同。
相关阅读 >>
更多相关阅读请进入《Python》频道 >>

Python编程 从入门到实践 第2版
python入门书籍,非常畅销,超高好评,python官方公认好书。