Interacción con el Usuario en Python
Introducción
La función input()
en
Python es una herramienta fundamental para interactuar con el
usuario. Permite que el programa solicite y reciba información
directamente del teclado.
Cuando se llama a esta función, el programa se detiene y espera a que el usuario ingrese algún dato. Una vez que el usuario presiona Enter, el valor ingresado se devuelve como una cadena de texto (string).

La función input()
La función input()
en
Python es una herramienta fundamental para interactuar con el
usuario. Permite que el programa solicite y reciba información
directamente del teclado.
Cuando se llama a esta función, el programa se detiene y espera a que el usuario ingrese algún dato. Una vez que el usuario presiona Enter, el valor ingresado se devuelve como una cadena de texto (string).
Sintaxis:
variable = input(prompt)
- prompt: Es un mensaje opcional que se muestra al usuario para indicar qué tipo de información se espera.
- variable: Es una variable donde se almacena la entrada del usuario.
Ejemplo:
nombre = input("Por favor, ingresa tu nombre: ")
edad = input("¿Cuál es tu edad? ")
print("Hola,", nombre, "!")
print("Tienes", edad, "años.")
-
La línea
nombre = input("Por favor, ingresa tu nombre: ")
muestra el mensaje "Por favor, ingresa tu nombre:" en la consola. - El programa espera a que el usuario escriba su nombre y presione Enter.
- El nombre ingresado se almacena en la variable nombre.
- Lo mismo ocurre con la edad en la siguiente línea.
- Finalmente, se imprimen los mensajes de saludo utilizando las variables nombre y edad.
El Resultado de la Función input()
La función
input()
siempre devuelve
una cadena de texto, incluso si el usuario ingresa un número.
Una cadena que contiene todos los caracteres que el usuario ha introducido desde el teclado. No es un entero ni un flotante.
Esto significa que no se debe utilizar como un argumento para operaciones matemáticas, por ejemplo, no se pueden utilizar estos datos para elevarlos al cuadrado, para dividirlos entre algo o por algo.
anything = input("Ingresa un número:")
something = anything ** 2.0
print(anything, "al cuadrado es", something)
Cuando python intente ejecutar
something = anything ** 2.0
se devolverá el siguiente error "TypeError: unsupported
operand type(s) for ** or pow(): 'str' and 'float'"
Conversión de Tipos
Python ofrece dos simples funciones para especificar un tipo
de dato y resolver este problema, aquí están:
int()
y
float()
.
Sus nombres indican cual es su función:
-
La función
int()
toma un argumento (por ejemplo, una cadena:int(string)
) e intenta convertirlo a un valor entero; si llegase a fallar, el programa entero fallará también. -
La función
float()
toma un argumento (por ejemplo, una cadena:float(string)
) e intenta convertirlo a flotante.
Por ejemplo:
-
Para valores enteros:
edad = int(input("¿Cuál es tu edad? "))
-
Para valores flotantes:
leg_a = float(input("Ingresa la longitud del primer cateto: ")) leg_b = float(input("Ingresa la longitud del segundo cateto: ")) hypo = (leg_a**2 + leg_b**2) ** .5 print("La longitud de la hipotenusa es:", hypo)
Operadores Cadena
Concatenación
En Python, el signo más (+
) se utiliza comúnmente para concatenar
cadenas de texto.
Cuando se emplea entre dos o más valores de tipo str, el
operador +
une esas
cadenas en una sola. Este uso específico del
+
permite construir
mensajes personalizados o juntar varios fragmentos de texto en
un mismo resultado.
saludo = "Hola, "
nombre = "María"
mensaje = saludo + nombre
print(mensaje) # Resultado: "Hola, María"
Replicación
-
Replicación de cadenas: En este
caso, el operador
*
permite repetir la cadena un número específico de veces.texto = "Hola " * 3 # texto será "Hola Hola Hola "
-
Replicación de listas: En este
caso el operador
*
permite replicar el contenido de la cadena.lista = [1, 2, 3] * 2 # lista será [1, 2, 3, 1, 2, 3]
Otros Tipos de Conversiones
str()
La función str()
en
Python convierte un valor a su representación en cadena de
texto (string). Esta función se utiliza comúnmente para
transformar valores numéricos, booleanos, listas,
diccionarios, entre otros, en cadenas que pueden ser
visualizadas o impresas fácilmente.
Sintaxis:
str(objeto)
Parámetro:
- objeto: Cualquier valor o expresión que se quiera convertir en cadena.
Ejemplos de uso
-
Convertir un número a cadena:
numero = 42 texto = str(numero) print(texto) # Output: '42'
-
Convertir un booleano a cadena:
verdad = True texto = str(verdad) print(texto) # Output: 'True'
-
Convertir una lista a cadena:
lista = [1, 2, 3] texto = str(lista) print(texto) # Output: '[1, 2, 3]'
-
Convertir un diccionario a cadena:
diccionario = {'nombre': 'Juan', 'edad': 30} texto = str(diccionario) print(texto) # Output: "{'nombre': 'Juan', 'edad': 30}"
Uso Práctico
str()
es especialmente
útil al combinar diferentes tipos de datos en una cadena. Por
ejemplo:
edad = 25
nombre = "Ana"
mensaje = "Hola, " + nombre + ". Tienes " + str(edad) + " años."
print(mensaje)
# Output: 'Hola, Ana. Tienes 25 años.'
Función de Verificación de Tipo
En Python, la función
type()
se utiliza para
obtener el tipo de dato de un objeto. Cuando se pasa una
variable o cualquier valor a
type()
, esta función
devuelve el tipo de dato de dicho objeto. Esto puede incluir
tipos de datos básicos como
int
,
float
,str
, list
, entre otros, así
como tipos de datos definidos por el usuario (por ejemplo,
clases).
# Declaración de diferentes tipos de datos
x = 10 # Entero
y = 3.14 # Flotante
z = "Hola" # Cadena de texto
w = [1, 2, 3] # Lista
# Usar type() para obtener el tipo de dato
print(type(x)) # Salida: <class 'int'>
print(type(y)) # Salida: <class 'float'>
print(type(z)) # Salida: <class 'str'>
print(type(w)) # Salida: <class 'list'>
En este ejemplo:
-
type(x)
devuelve<class 'int'>
, indicando quex
es un entero. -
type(y)
devuelve<class 'float'>
, indicando quey
es un número decimal. -
type(z)
devuelve<class 'str'>
, indicando quez
es una cadena de texto. -
type(w)
devuelve<class 'list'>
, indicando quew
es una lista.
Esta función es particularmente útil para depuración, comprobaciones de tipos, o cuando se trabaja con tipos dinámicos en Python.