Python零作为打开函数中的文件参数

我目前对这段代码感到困惑。

究竟是做什么的

open(0)

做?

我已经查阅了文档或试图在互联网上找到一些东西,但没有任何线索。

使用此代码的代码片段:

map(abs,map(int,open(0).read().split()))

谢谢^

回答

0是与stdin(1对应于stdout, 2to stderr)关联的文件描述符。openint文件描述符作为参数,而不仅仅是路径,因此传递0是合法的。这只是创建绑定到的文件对象而stdin无需import sys.

它的缺陷在于,当它关闭时,它将关闭文件描述符0(因为closefd=False没有通过),所以sys.stdin会在没有意识到的情况下关闭(尽管如果有人尝试使用它,它可能会弄清楚)。


以上是Python零作为打开函数中的文件参数的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>