PYTHON - ENTRADA Y SALIDA

Puedes ver todo el contenido de este vídeo GRATIS, simplemente registrandote

En esta sesión demostramos el uso de "input" para solicitar una entrada de datos al usuario, y el uso de "print" para mostrar salidas personalizando su formato.

Cargando video...

NOTA: ¡Este curso se encuentra disponible, completo y 100% gratis para ti!. Solo es necesario registrarse para poder disfrutarlo sin coste.

Descripción del Vídeo

En un programa o script de consola, podemos solicitar información del usuario (desde la entrada estándar de teclado) con la función input()

El resultado de input(), de manera predeterminada, es una cadena (tipo 'str'), pero podemos utilizar int() o float() si queremos forzar su interpretación numérica. La función eval() también puede ayudarnos a interpretarla como un tipo de dato dinámico según el valor almacenado.

Para mostrar datos como salida, típicamente usamos la función print(). Nota: print() es una función desde Python 3.0, antes se usaba sin paréntesis, y algunos detalles de su comportamiento son distintos a Python 2.

Podemos controlar la salida con argumentos a la función print(): el separador (predeterminado es un espacio) y el final de la salida (salto de línea predeterminado).

También podemos dar formato a valores utilizando:
La sintaxis similar a 'printf' (ej: '%02f')
str.format()
# Solicitar entrada. El resultado siempre es 'str'
>>> x = input()
4
>>> x
'4'
>>> x = input()
Cadena
>>> x
'Cadena'
# Interpretar como entero
>>> x = int(input("Introduzca un número entero:"))
Introduzca un número entero:4
>>> x
4
>>> type(x)

>>> x = int(input("Introduzca un número entero:"))
Introduzca un número entero:cadena
Traceback (most recent call last):
 File "", line 1, in 
ValueError: invalid literal for int() with base 10: 'cadena'
# Interpretar como float
>>> x = float(input("Introduzca un número decimal:"))   
Introduzca un número decimal:5.4
>>> x
5.4
>>> type(x)

>>> x = float(input("Introduzca un número decimal:"))
Introduzca un número decimal:4
>>> x
4.0
>>> type(x)

# Interpretación dinámica
>>> x = eval(input("Introduzca un número:"))              
Introduzca un número:4
>>> x
4
>>> type(x)

>>> x = eval(input("Introduzca un número:"))
Introduzca un número:4.3
>>> x
4.3
>>> type(x)


# Salida usando sintaxis estilo 'printf'
>>> "Artículo: %05d, Precio: %6.2f" % (345, 38.475)
'Artículo: 00345, Precio:  38.48'
# Usando str.format()
>>> "Artículo: {0:05d}, Precio: {1:6.2f}".format(345, 38.475)
'Artículo: 00345, Precio:  38.48'
# format() con nombres de argumentos
>>> "Artículo: {a:05d}, Precio: {p:6.2f}".format(a=345, p=38.475)
'Artículo: 00345, Precio:  38.48'
# Modificadores para signos
>>> "Artículo: {a:05d}, Precio: {p:+6.2f}".format(a=345, p=38.475)
'Artículo: 00345, Precio: +38.48'
>>> "Artículo: {a:05d}, Precio: {p:+6.2f}".format(a=345, p=-38.475)
'Artículo: 00345, Precio: -38.48'
# Diferentes alineaciones dentro del espacio disponible
>>> "Artículo: {a:5d}, Precio: {p:6.2f}".format(a=345, p=38.475)  
'Artículo:   345, Precio:  38.48'
>>> "Artículo: {a:<5d}, Precio: {p:6.2f}".format(a=345, p=38.475)
'Artículo: 345  , Precio:  38.48'
>>> "Artículo: {a:>5d}, Precio: {p:6.2f}".format(a=345, p=38.475)  
'Artículo:   345, Precio:  38.48'
>>> "Artículo: {a:^5d}, Precio: {p:6.2f}".format(a=345, p=38.475)  
'Artículo:  345 , Precio:  38.48'
# Usar separadores de miles (coma)
>>> "Artículo: {a:05d}, Precio: {p:6,.2f}".format(a=345, p=3888.475)
'Artículo: 00345, Precio: 3,888.47'

Rating

Global

Ver video en playlist

comments powered by Disqus

Headshot of Juan Paredes

Juan Paredes

Ingeniero de Sistemas con amplia experiencia, especializado en el desarrollo y arquitectura de software.