Código de Python - Ejemplo de implementar un menu en python en la consola

Imágen de perfil
Val: 1.141
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Ejemplo de implementar un menu en python en la consolagráfica de visualizaciones


Python

estrellaestrellaestrellaestrellaestrella(25)
Actualizado el 30 de Noviembre del 2016 por xve (Publicado el 05 de Diciembre del 2014)
80.115 visualizaciones desde el 05 de Diciembre del 2014. Una media de 350 por semana
Este simple código es un ejemplo para visualizar como se puede crear un menú con varias opciones de manera sencilla.

Requerimientos

Versiones para Python 2.7 y Python 3.x

Python 2.x
estrellaestrellaestrellaestrellaestrella(6)

Actualizado el 21 de Enero del 2017 (Publicado el 05 de Diciembre del 2014)gráfica de visualizaciones de la versión: Python 2.x
17.987 visualizaciones desde el 05 de Diciembre del 2014. Una media de 84 por semana

Python 3.x
estrellaestrellaestrellaestrellaestrella(19)

Actualizado el 06 de Diciembre del 2016 (Publicado el 30 de Noviembre del 2016)gráfica de visualizaciones de la versión: Python 3.x
62.132 visualizaciones desde el 30 de Noviembre del 2016. Una media de 483 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/usr/bin/python
# -*- coding: utf-8 -*-
 
import os
 
def menu():
	"""
	Función que limpia la pantalla y muestra nuevamente el menu
	"""
	os.system('clear') # NOTA para windows tienes que cambiar clear por cls
	print ("Selecciona una opción")
	print ("\t1 - primera opción")
	print ("\t2 - segunda opción")
	print ("\t3 - tercera opción")
	print ("\t9 - salir")
 
 
while True:
	# Mostramos el menu
	menu()
 
	# solicituamos una opción al usuario
	opcionMenu = input("inserta un numero valor >> ")
 
	if opcionMenu=="1":
		print ("")
		input("Has pulsado la opción 1...\npulsa una tecla para continuar")
	elif opcionMenu=="2":
		print ("")
		input("Has pulsado la opción 2...\npulsa una tecla para continuar")
	elif opcionMenu=="3":
		print ("")
		input("Has pulsado la opción 3...\npulsa una tecla para continuar")
	elif opcionMenu=="9":
		break
	else:
		print ("")
		input("No has pulsado ninguna opción correcta...\npulsa una tecla para continuar")



Comentarios sobre la versión: Python 3.x (19)

darwin ds
09 de Diciembre del 2016
estrellaestrellaestrellaestrellaestrella
hola, disculpa el codigo esta con unos errores...
se supone que despues de un IF si es string va con comillas, contario no :
if opcionMenu=="1":
if opcionMenu==1:
Responder
Imágen de perfil
09 de Diciembre del 2016
estrellaestrellaestrellaestrellaestrella
Hola Darwin, es un string, por eso lleva las comillas!!!
Responder
Benerando
07 de Mayo del 2019
estrellaestrellaestrellaestrellaestrella
correcto, no esta realizando ninguna operacion por ende se toma como string
Responder
Imágen de perfil
22 de Enero del 2017
estrellaestrellaestrellaestrellaestrella
No ha dejado ningún comentario
Responder
Betty
12 de Marzo del 2017
estrellaestrellaestrellaestrellaestrella
Está excelente .....
Responder
Gustavo
29 de Marzo del 2017
estrellaestrellaestrellaestrellaestrella
excelente
Responder
07 de Mayo del 2017
estrellaestrellaestrellaestrellaestrella
Gracias amigo, me ha servido, pero tengo una pregunta ¿Cómo puedo hacer para volver al menú principal después de elegir una opción?
Soy nuevo en esto.
Responder
Imágen de perfil
07 de Mayo del 2017
estrellaestrellaestrellaestrellaestrella
Hola Andrés, ya lo hace... siempre vuelve a mostrar el menú excepto cuando pulsas la opción de salir.
Responder
07 de Mayo del 2017
estrellaestrellaestrellaestrellaestrella
Error mío, creo que no había escrito bien el codigo. Gracias por tu respuesta amigo. Qué tengas un buen día
Responder
Catalina
24 de Mayo del 2017
estrellaestrellaestrellaestrellaestrella
Me ha servido bastante el código, pero debes tener en cuenta que al momento de elegir las opciones estás diciendo que inserte un NUMERO y cuando uno lo hace no lo recibe, simplemente porque lo toma como un string, solo debes quitarle las comillas en los if, por ejemplo (if opcionMenu==1:)

Muchas gracias,
Responder
YIMI PEICH
07 de Noviembre del 2017
estrellaestrellaestrellaestrellaestrella
CORRECTO!!...por eso Python es tan intuitivo y tan bonito y limpio.
Animo a los que no conocen ningún lenguaje o desean aprender a programar, que hagan o busquen lo mismo pero por ejemplo en JAVA (van a ver que cambio!!...sin desmerecer a JAVA que es un lenguaje para ya programadores...
No obstante, a ver que opinais compis, me queda la gran duda de si recomendar a un principiante que empieze por Phyton o no. Quiero decir que luego al no "sufrir tanto" al escribir las rutinas y las funciones y entrar a aprender , no se, C# ó ++ ó C. O incluso PHP y JavaScript (no tanto JS) se lleve el chasco a la hora de escribir código. No se si me explico...
Responder
Ezequiel
02 de Octubre del 2017
estrellaestrellaestrellaestrellaestrella
Muchas gracias
Responder
GarNon_43
13 de Noviembre del 2017
estrellaestrellaestrellaestrellaestrella
buenas sobre el còdigo tenia una pregunta, estoy haciendo un programa con las listas y al introducir lo que tu has puesto para hacer un menú al darle a run me dice "inconscient use of tab and spaces in identation". SOY BASTANTE NUEVO, help xD
Responder
marlene
07 de Diciembre del 2017
estrellaestrellaestrellaestrellaestrella
Gracias y me ayudo con el menu de un proyecto
Responder
paipi
29 de Mayo del 2018
estrellaestrellaestrellaestrellaestrella
No ha dejado ningún comentario
Responder
N
20 de Julio del 2018
estrellaestrellaestrellaestrellaestrella
¿Cómo podría hacer que dentro de una opción luego se puedan volver a elegir diferentes opciones?
Por lo demás genial.
Responder
David
19 de Noviembre del 2018
estrellaestrellaestrellaestrellaestrella
El programa, como plantilla MENÚ es genial, y como aprendizaje también.

El primer error, encontrado, ya se comenta por el hilo. Para elejir las opciones, hay que eliminar las comillas, ya que de caso contrario te lleva siempre al else.

De una forma parecida, ocurre con Pulsar una tecla para comenzar desde el principio. Aquí no especificamos, si pulsamos un numero o una letra por lo que en lugar de input debemos de emplear raw_input.

Gracias, por estos aportes. Estoy comenzando y como dije antes a modo de plantillas están genial.
Responder
Diego Avila
28 de Diciembre del 2018
estrellaestrellaestrellaestrellaestrella
Saludos esta bien el menu, aunque si en efecto genera un error al escoger una opcion dado que esta validando opcionMenu como un string y la opcion recogida o tomada es un integer como tal la evaluacion del if deberia ser : if opcionMenu == 1 :... caso contrario genera el mensaje: "No has pulsado ninguna opción correcta..."..... para usar tipo string como se evalua en el if deberia usarse str(mi_opcion) == "1" ..
Responder
Mauro
12 de Marzo del 2019
estrellaestrellaestrellaestrellaestrella
Esta buenisimo. Podes usar:

import os

borrar = 'cls' if os.name == 'nt' else 'clear' #os.name trae el nombre del kernel. NT para windows y POSIX para Mac o Linux

os.system(borrar)

Y te queda multiplataforma :)
Responder

Comentar la versión: Python 3.x

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s2935
Revisar política de publicidad