Entrada Estándar: input() (original) (raw)

La función input() permite a los usuarios introducir datos de distintos tipos desde la entrada estándar (normalmente se corresponde con la entrada de un teclado).

Introducir datos de distinto tipo

edad = int(input('Teclear edad: ')) # entrada de entero peso = float(input('Teclear peso: ')) # entrada de flotante nombre = input('Teclear nombre: ') # entrada de cadena print(nombre, edad, 'años', peso, 'kg') # muestra datos

Introducir datos con captura de errores (excepciones)

try: # bloque de código a comprobar articulos = int(input('Artículos:')) # entrada de un número precio = int(input('Precio:')) # entrada de un número print('Pagar: ' + str(articulos*precio) + '€') # muestra resultado

except: # bloque para captura de error print('error, deben ser números') # muestra mensaje

Introducir datos con captura de errores en bucle

tramos = 0 total = 0 while True: try: distancia = int(input('Distancia: ')) if distancia == 0: break else: tramos += 1 total += distancia print('Los {} tramos miden {} km.'.format(tramos,total)) except: print('Debes teclear un número entero')

En el siguiente ejemplo si se produce un error no se detendrá el proceso. Volverá a pedirse que se introduzca un dato numérico gracias al bucle.

Introducir fechas y horas con captura de errores

Para validar la entrada de fechas y horas se utiliza la función strptime() del módulo datetime que convierte la entrada introducida a un tipo de datos llamado datetime. En caso de que no pueda convertirla porque no se adecue a una fecha/hora correcta producirá una excepción.

import datetime

while True: try: fecha = input("Introducir Fecha dd-mm-aaaa: ") fecha = datetime.datetime.strptime(fecha, "%d-%m-%Y") break

except:
    print ("Fecha incorrecta\n")

print(fecha)

Ir al índice del tutorial de Python