2012年9月9日日曜日

python - タイムアウト付きの標準入力取得


このエントリーをはてなブックマークに追加
select の使用の問題で Unix 限定(?)。
少なくとも Windows では使えない(らしい)。cygwin は可。

def inputWithTimeout(timeout_time):
    i, o, e = select.select([sys.stdin], [], [], timeout_time)
    if (i):
        return sys.stdin.readline().strip()
    else:
        return None