Créer un menu en Python
Je suis en train de faire un menu en python qui doit:
- Imprimer un menu avec les options numérotées
- Permettre à l'utilisateur d'entrer un numéro de l'option
- Selon le numéro de l'option l'utilisateur choisit, d'exécuter une fonction spécifique à l'action. Pour l'instant, votre fonction peut juste l'impression qu'il est en cours d'exécution.
- Si l'utilisateur entre dans quelque chose de pas valide, il indique à l'utilisateur ce qu'ils firent, et d'afficher à nouveau le menu
- utiliser un dictionnaire pour stocker les options de menu, avec le numéro de l'option de la clé et le texte à afficher pour que l'option en tant que valeur.
- L'ensemble du système de menu doit s'exécuter à l'intérieur d'une boucle et de garder en permettant à l'utilisateur de faire des choix jusqu'à ce qu'elles sélectionnez quitter/cesser de fumer, à quel point votre programme peut se terminer.
Je suis nouveau sur Python, et je ne peux pas comprendre ce que j'ai fait de mal avec le code.
Jusqu'à présent c'est mon code:
ans=True
while ans:
print (""""
1.Add a Student
2.Delete a Student
3.Look Up Student Record
4.Exit/Quit
"""")
ans=input("What would you like to do?"
if ans=="1":
print("\nStudent Added")
elif ans=="2":
print("\n Student Deleted")
elif ans=="3":
print("\n Student Record Found")
elif ans=="4":
print("\n Goodbye")
elif ans !="":
print("\n Not Valid Choice Try again")
RÉPONDU
C'est ce qu'il voulait, apparemment:
menu = {}
menu['1']="Add Student."
menu['2']="Delete Student."
menu['3']="Find Student"
menu['4']="Exit"
while True:
options=menu.keys()
options.sort()
for entry in options:
print entry, menu[entry]
selection=raw_input("Please Select:")
if selection =='1':
print "add"
elif selection == '2':
print "delete"
elif selection == '3':
print "find"
elif selection == '4':
break
else:
print "Unknown Option Selected!"
source d'informationauteur Jack
Vous devez vous connecter pour publier un commentaire.
Il y avait juste un couple de modifications mineures requises:
J'ai changé les quatre citations à trois (c'est le nombre nécessaire pour multiligne citations), ajout d'un crochet de fermeture après
"What would you like to do? "
et changé d'entrée à raw_input.Cela devrait le faire. Il vous manque un
)
et vous avez seulement besoin"""
pas 4 d'entre eux. Aussi, vous n'avez pas besoin d'un elif à la fin.On dirait que vous venez de terminer l'étape 3. Au lieu d'exécuter une fonction, il suffit d'imprimer une déclaration. Une fonction est définie de la manière suivante:
alors appelée par écrit
addstudent()
.Je vous conseille d'utiliser un
while
boucle pour votre entrée. Vous pouvez définir l'option de menu en dehors de la boucle, placer l'instruction print à l'intérieur de la boucle, et newhile(#valid option is not picked)
puis placez-le si les déclarations après le temps. Ou vous pouvez faire unewhile
boucle etcontinue
la boucle si une option n'est pas sélectionnée.En outre, un dictionnaire est défini de la manière suivante: