Supongamos que tratamos de pedirle al usuario que seleccione 1 de 3 opciones, para ir a otra subtarea:
Procedemos a mostrarselo al usuario:
print('----------bienvenido----------')print('1. Menu')print('2. Opciones')print('3. Créditos')
Cómo estas opciones son concisas, no tenemos necesidad de cambiarlas, por lo que utilizaremos una tupla para definir nuestras opciones disponibles
my_option = ('menu','opciones','creditos')
Ahora procedemos a pedir una la opción al usuario y con la opción lower() convertimos la cadena de texto en minusculas para que coincidan con el contenido de la tupla anterior:
user= input('Introduce tu opción: ').lower()
Siguiendo con el proposito del Post, con un búcle while preguntamos si lo que esta en ‘user’ esta en la tupla, si no es verdad, lo negamos para que entre al menú otra vez y con un mensaje de advertencia
whilenot user in my_option:
print('\n1. Menu')
print('2. Opciones')
print('3. Créditos')
user = input('Opción no valida, elige una opción disponile: ')
Si en dado caso pone una opción correcta, le imprimimos su opción y para estética ponemos la primera letra en mayúscula con la función ‘capitalize()’
print('elegiste -', user.capitalize())