Foros del Web » Programando para Internet » Python »

[SOLUCIONADO] validar que un campo solo reciba datos numericos

Estas en el tema de validar que un campo solo reciba datos numericos en el foro de Python en Foros del Web. Hola como estan necesito su ayuda quisiera saber como se puede hacer un campo solo me permite recibir texto numerico y si no es numerico ...
  #1 (permalink)  
Antiguo 09/09/2015, 11:05
 
Fecha de Ingreso: julio-2011
Ubicación: Peru
Mensajes: 92
Antigüedad: 12 años, 9 meses
Puntos: 1
validar que un campo solo reciba datos numericos

Hola como estan necesito su ayuda quisiera saber como se puede hacer un campo solo me permite recibir texto numerico y si no es numerico que me vuelva pedir que ingrese el dato, intente hacerlo con un while pero me sale error

es para mi validar pc1
es para mi validar pc2
es para mi validar pc3
es para mi validar final

aqui les dejo mi codigo

Código:
curso = input("Ingrese nombre del curso: ")
pc1 = int(input("Ingrese la nota del Practica 1: "))
pc2 = int(input("Ingrese la nota del Practica 2: "))
pc3 = int(input("Ingrese la nota del Practica 3: "))
final = int(input("Ingrese la nota del examen final: "))

while pc1 != int(pc1):
	pc1 = int(input("Ingreso datos erroneos, Ingrese el dato otra vez: "))

nota1 = pc1 * 0.1
nota2 = pc2 * 0.1
nota3 = pc3 * 0.2

prom_prac = nota1 + nota2 + nota3
ex_final = final * 0.4
nota_final = ex_final + prom_prac

if nota_final < 11.5:
	print("Tu nota es ", round(nota_final), "Reproaste el curso de ", curso)
else:
	print("Tu nota es ", round(nota_final), "Aprobaste el curso de ", curso)
espero su pronta ayuda gracias

Última edición por andy2507; 09/09/2015 a las 11:55
  #2 (permalink)  
Antiguo 09/09/2015, 12:23
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: validar que un campo solo reciba datos numericos

No digo que sea la mejor manera, pero al menos es una idea:
Código Python:
Ver original
  1. while True:
  2.     try:
  3.         pc1 = int(input("..."))
  4.         break
  5.     except:
  6.         print 'El dato ingresado no es entero'
  7.         pass
o
Código Python:
Ver original
  1. es_numerico = False
  2. while not es_numerico:
  3.     pc1_str = input("...")
  4.     es_numerico = pc1_str.isdigit()


Saludos.
  #3 (permalink)  
Antiguo 09/09/2015, 13:04
 
Fecha de Ingreso: julio-2011
Ubicación: Peru
Mensajes: 92
Antigüedad: 12 años, 9 meses
Puntos: 1
Respuesta: validar que un campo solo reciba datos numericos

Gracias AlvaroG con la primera forma que me indicaste salio

Etiquetas: numero, redondear
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:37.