2025年3月26日 星期三 甲辰(龙)年 月廿五 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > Python

Python fileno()函数:得到文件编号

时间:10-01来源:作者:点击数:48

该函数用于得到文件在进程中的编号,这是一个整数值。其中,stdin 在进程中的文件编号永远是 0,stdout 永远是 1,stderr 永远是 2,其他文件的编号都大于 2。

下面的例子查看了普通文件的编号以及 3 个特殊文件的编号。

  • >>> import sys # 引入sys模块
  • >>> fd = open("./in.dat", "rb") # 打开一个普通文件
  • >>> fd.fileno() # 得到该文件的编号
  • 3
  • >>> fd.close() # 关闭该文件
  • >>> sys.stdin.fileno() # 得到stdin的文件编号
  • 0
  • >>> sys.stdout.fileno() # 得到stdout的文件编号
  • 1
  • >>> sys.stderr.fileno() # 得到stderr的文件编号
  • 2

如果该文件已经被关闭,则 fileno() 会抛出 ValueError 异常。下面的代码演示了这种情况。

  • >>> import sys
  • >>> fd = open("./in.dat", "rb") # 打开文件
  • >>> fd.fileno()
  • 3
  • >>> fd.close() # 关闭文件
  • >>> fd.fileno() # 无法得到文件编号,抛出异常ValueError
  • Traceback (most recent call last):
  • File "<stdin>", line 1, in <module>
  • ValueError: I/O operation on closed file

 

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门