具有超時處理的非同步鍵盤輸入
目前的任務是請求使用者輸入,同時施加超時以防止無限期等待。雖然谷歌建議為此建立一個郵件線程,但它可能不會產生令人滿意的結果。
挑戰來自於系統輸入函數([raw_]input)最多接受一個參數。然而,要實現超時,必須傳遞一個超時參數。這會導致類型錯誤。
使用 Select Poll 的解決方案
更可靠的解決方案涉及使用 select.select()系統call:
import sys, select print("You have ten seconds to answer!") i, o, e = select.select([sys.stdin], [], [], 10) if (i): print("You said", sys.stdin.readline().strip()) else: print("You said nothing!")
Breakdown
這種方法在處理具有超時功能的鍵盤輸入方面提供了更大的可移植性和效率。
以上是如何在Python中取得超時的非同步鍵盤輸入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!