Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Vos tutoriels et astuces


Index du Forum » Vos tutoriels et astuces » Python : Utilisation de touches du clavier
Disperseur Hors ligne Membre Points: 1830 Défis: 1 Message

Python : Utilisation de touches du clavier

Posté le 01/04/2020 08:44

Bonjour à tous,

Dans la continuité des actualités du site tournant pas mal en ce moment autour de l'application Python de Casio et des modules graphiques bientôt disponibles, je vous propose ici une petite astuce.
Après la publication de la première version de l'application python sur les graphs on s'est tous mis à imaginer des librairies de fonctions pour l'écran graphique, le gestion des fichiers ou encore pour le clavier. Je viens de trouver en essayant des bouts de code dans le shell de ma graph90 qu'il y avait un moyen de "controller" une touche du clavier: la touche "AC/On".

Je m'explique, le concept est assez simple: lors de l’exécution d'un programme dans le shell, a part l'instruction input(), seul la touche "AC/On" peut stopper l'exécution d'un script (ou bien une autre instruction aussi.. je ne sait plus ). L'idée est donc d'utiliser le bloc "try/ except" de python pour contrecarrer l'erreur renvoyée par la calto lors de l'arrêt forcé d'un script: "KeyboardInterrupt".

Voici donc un petit script d'exemple:
while(1):
    try:
        for i in range(50): pass
    except KeyboardInterrupt:
        print("Touche AC pressee !")


Vous remarquerez la boucle "for" dans le "try". Après avoir testé je me suis rendu compte qu'un simple "pass" ne fonctionne pas..

Ce code est plus ou moins celui que j'ai utilisé pour tester mon idée, il ne permet donc pas a proprement dit de faire faire quelque chose à la touche AC..

Je vais de mon côté continuer de chercher un code pour appliquer concrètement cette astuce. En attendant je vous laisse a votre imagination !

A+ sur PC


Dark storm Hors ligne Labélisateur Points: 11634 Défis: 176 Message

Citer : Posté le 17/04/2020 14:02 | #


Ou tout simplement

input()

Le cast en int n'est pas nécessaire, donc on peut l'enlever. Et quitte à l'enlever, autant enlever aussi la gestion de l'exception

J'avais pas fait gaffe que tu t'étais corrigé, mais bon, autant mettre en évidence la solution propre
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Lephenixnoir En ligne Administrateur Points: 24259 Défis: 170 Message

Citer : Posté le 17/04/2020 15:57 | #


L'exception gère AC/ON aussi non ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Shadow15510 Hors ligne Administrateur Points: 5501 Défis: 18 Message

Citer : Posté le 17/04/2020 16:04 | #


Oui
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque


LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 53 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd