如果它非常基本或以前已經詢問過(我使用Google搜索,但找不到簡單的&令人滿意的解釋),我很抱歉。python中的sys.stdin.fileno()是什麼
我想知道sys.stdin.fileno()
是什麼?
我在代碼中看到它,並不明白它的作用。下面是實際的代碼塊,
fileno = sys.stdin.fileno()
if fileno is not None:
new_stdin = os.fdopen(os.dup(fileno))
我只是在我的Python命令行執行print sys.stdin.fileno()
和它返回0
。
我還搜查谷歌和this (nullage.com)是我能找到的參考,但它也只是說,
的fileno() - >整數 「文件描述符」。
這對於較低級別的文件接口(例如os.read())是必需的。
那麼究竟是什麼意思?
這意味着它需要較低級別的文件接口(如'os.read')。它是文件的低級別標識符(並且它可能不適用於所有平臺),傳統上標準輸入具有描述符0,標準輸出1和標準錯誤2,而其他文件具有> 2的描述符。 'os.dup'複製一個描述符(爲文件副本創建一個低級標識符),'fdopen'從低級描述符創建一個高級對象。 – skyking