J'essaie de créer un menu basé sur du texte en Python.Traitement du menu texte en Python
Voici le code:
#!/usr/bin/env python
def testcaseOutput():
print '1. Add. 2. Subtract. 3. Divide. 4. Multiply'
try:
answer = int(raw_input('Enter a value (1 - 4) >. '))
except ValueError:
print 'Invalid input. Enter a value between 1 -4 .'
testcaseOutput()
if answer in range(1, 5):
return answer
else:
print 'Invalid input. Enter a value between 1 - 4.'
testcaseOutput()
Ma question:
Lorsque l'utilisateur entre une entrée non valide, à savoir pas un numéro, je veux que cette fonction s'appelle à nouveau. J'ai donc utilisé l'approche récursive que je considère comme un mauvais design. J'utilise cette approche à nouveau dans le
if answer in range(1, 5).
Y at-il une autre façon de gérer cela? J'ai besoin de l'invite appelée à nouveau quand il y a une entrée invalide.
De plus, y a-t-il un moyen de mapper les deux contraintes: vérifier si l'entrée est un nombre et vérifier si le nombre est dans la plage (1,5) ensemble? Comme vous pouvez le voir, je vérifie cela individuellement.
connexes: http://www.wellho.net/resources/ex.php4?item=y103/python_switch_case – badp