menu

Python créer un menu rapidement

Une petite astuce, pour coder un menu facilement.

menu = 'petit, moyen, grand, monstrueux xxl'
menu = menu.split(', ')

for i, item in enumerate(menu):
    print str(i+1)+'. '+item

choice = int(raw_input('choix ? : '))
print 'Vous avez choisi le menu :'+menu[choice-1]

Là, vous me dites que l'utilisateur peut taper n'importe quoi (never trust user input). On procèderait alors ainsi :

a = raw_input('choix ? : ')
if a in '123' and len(a) == 1:
    choice = menu[int(a)-1]
else:
    choice = False

if choice:
    print 'Vous avez choisi le menu : '+choice
else:
    print 'Erreur'

Ou de façon plus compact :

a = raw_input('choix ? : ')
choice = int(a) if a in '123' and len(a) == 1 else False
print 'Vous avez choisi le menu :'+menu[choice-1] if choice else 'Erreur'

Posted 01 February 2015

Astuce | Site | Art | Vidéo | Musique | Prog | Image