Had Masa pada raw_input dalam Python
raw_input ialah fungsi Python yang digunakan untuk menunggu input pengguna. Ia tidak menyediakan cara untuk menentukan had masa, yang mungkin diingini dalam senario tertentu.
Penyelesaian
Untuk menetapkan had masa pada raw_input, satu pendekatan ialah untuk menggunakan fungsi signal.alarm, yang menghantar isyarat SIGALRM kepada proses selepas masa yang ditentukan tamat. Berikut ialah coretan kod:
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
Kod ini memasang pengendali penggera yang menimbulkan pengecualian KeyboardInterrupt apabila had masa dicapai, yang secara berkesan melangkau fungsi raw_input.
Sebagai alternatif, untuk silang- platform atau penyelesaian khusus Windows, seseorang boleh menggunakan threading.Pemasa atau tinjauan pendapat msvcrt.kbhit dalam Windows untuk mencapai kefungsian yang serupa.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menetapkan Had Masa pada Fungsi `raw_input` Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!