0
votes

Comment utiliser la commande if / puis dans Python

Si récemment, j'ai commencé à apprendre Python et j'ai proposé un script très basique qui devrait poser une question à l'utilisateur et déplacer le curseur sur une tache sur l'écran en fonction de la réponse que le programme reçoit. Mais lorsque j'exécute le programme, il exécute la première partie du code, puis ferme l'interprète comme si le programme était terminé. XXX

Je pense que le problème est avec la commande if / puis est peut-être une chose aussi simple qu'une erreur d'indentation.

Je m'excuse à l'avance pour toute erreur de formatage que j'ai faite lors de la frappe de cette question car je suis assez nouveau pour empiler débordement.


0 commentaires

3 Réponses :


1
votes

pyautogui.promppt () renvoie un string , et vous vérifiez int . Essayez de mettre des citations autour de si .. "1", elif .. "2" pour faire le int 's string 's.

ou, essayez:

int (pyautogui.promppt ("...") pour convertir chaîne sur int . .


0 commentaires

1
votes

J'aimerais élaborer au-dessus de la réponse déjà excellente de @ Zerecees pour tenir compte des cas de bord éventuels susceptibles de décomposer votre programme. xxx

le Essayez et sauf comptes de compte pour les cas dans lesquels l'utilisateur entrait quelque chose qui ne peut pas être casé dans int . Par exemple, imaginez une situation où l'utilisateur saisit un au lieu de 1 ; Dans de tels cas, la conversion de type ne fonctionnera pas. Par conséquent, nous utilisons un en boucle pour inviter l'utilisateur à saisir une entrée valide jusqu'à ce qu'une entrée valide soit entrée.

Puis, puisque nous avons converti la saisie d'une chaîne en un entier, les conditionnels fonctionneront comme prévu.


0 commentaires

0
votes

Le problème ici est pyautogui.prompt () renvoie une chaîne et vous vérifiez entier. Vous pouvez vérifier le type de retour en utilisant,

Imprimer (type (choix))

alors changez le type. Si vous êtes toujours coincé (si vous n'avez pas reçu la fenêtre d'invite), il peut y avoir des problèmes de sécurité, vous devrez donc autoriser explicitement l'application d'utiliser la souris / clavier. Il suffit de regarder l'accessibilité dans la préférence de la sécurité et de permettre l'action appropriée. J'espère que cela aidera :)


0 commentaires