Maison > développement back-end > Tutoriel Python > Comment puis-je implémenter la saisie clavier chronométrée en Python ?

Comment puis-je implémenter la saisie clavier chronométrée en Python ?

Susan Sarandon
Libérer: 2024-12-14 09:50:11
original
916 Les gens l'ont consulté

How Can I Implement Timed Keyboard Input in Python?

Saisie clavier temporisée : une solution rapide

Dans le domaine de la programmation, il est souvent nécessaire de demander aux utilisateurs une saisie tout en imposant une heure contrainte. Ce scénario se produit lorsque vous devez contrôler la durée des réponses des utilisateurs. Mais comment y parvenir efficacement ?

Saisie avec délai d'attente : un défi revisité

Certaines tentatives d'implémentation de la saisie au clavier avec délai d'attente se sont heurtées à des obstacles. Par exemple, le fil de discussion référencé sur http://mail.python.org/pipermail/python-list/2006-January/533215.html suggère une solution. Cependant, ces méthodes tombent souvent sur une erreur : " : [raw_]input attendu au plus 1 arguments, obtenu 2."

Solution : exploiter la puissance de Select

Bien que l'approche précédente puisse sembler prometteuse, une solution plus concise et portable peut être trouvée en utilisant un select appel :

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!")
Copier après la connexion

Ce code démontre une solution de contournement intelligente. Il vérifie si une entrée est prête sans la lire. Si une entrée est disponible dans le délai d'attente de 10 secondes, il procède à la lecture de l'entrée et à son affichage. Si aucune entrée n'est reçue, cela informe l'utilisateur qu'il n'a pas répondu à temps.

Cette approche est robuste, portable sur différentes plates-formes et fournit un moyen propre et efficace de gérer la saisie au clavier avec un délai d'attente. Ainsi, la prochaine fois que vous souhaiterez accorder à vos utilisateurs un temps limité pour répondre à votre invite, pensez à la puissance de l'appel de sélection.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal