Python에서 raw_input의 시간 제한
raw_input은 사용자 입력을 기다리는 데 사용되는 Python 함수입니다. 특정 시나리오에서 바람직할 수 있는 시간 제한을 지정하는 방법을 제공하지 않습니다.
해결책
raw_input에 시간 제한을 설정하려면 다음과 같은 접근 방식을 사용하세요. 지정된 시간이 만료된 후 프로세스에 SIGALRM 신호를 보내는 signal.alarm 함수를 사용합니다. 다음은 코드 조각입니다.
import signal def alarm_handler(signum, frame): raise KeyboardInterrupt def raw_input_with_timeout(prompt, timeout): signal.alarm(timeout) try: return input(prompt) except KeyboardInterrupt: return None finally: signal.alarm(0) # cancel the alarm
이 코드는 시간 제한에 도달할 때 KeyboardInterrupt 예외를 발생시키는 경보 처리기를 설치합니다. 이는 raw_input 함수를 효과적으로 건너뜁니다.
또는 교차 작업의 경우 플랫폼 또는 Windows 관련 솔루션의 경우 threading.Timer를 사용하거나 Windows에서 msvcrt.kbhit을 폴링하여 유사한 결과를 얻을 수 있습니다. 기능을 제공합니다.
위 내용은 Python의 `raw_input` 함수에 시간 제한을 어떻게 설정할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!