Esenciales de Conversión de Tipos
La conversión de tipos permite mover valores entre los tipos principales de Python para que puedan ser comparados, calculados o mostrados.
Conversión a int
int(x) crea un entero.
- Desde un int: devuelve el mismo número;
- Desde un float: trunca hacia cero (por ejemplo,
int(2.9)devuelve2,int(-2.9)devuelve-2); - Desde una cadena: la cadena debe representar un entero (los espacios y el signo son opcionales).
Conversiones válidas
12345678910# Converting different types of user input to integers age_input = " 42 " temperature_reading = 2.9 negative_balance = -2.9 print(int(age_input)) # 42 → clean string converted to int print(int(temperature_reading)) # 2 → fractional part truncated print(int(negative_balance)) # -2 → also truncates toward zero print(int("7")) # 7 → string number becomes integer print(int(" -15 ")) # -15 → handles spaces and sign
Estos generan ValueError
12int("2.5") # ValueError - not an integer string int("42a") # ValueError
Conversión a float
float(x) crea un número de punto flotante.
- Funciona para enteros y cadenas en notación decimal o científica;
- Las comas no son puntos decimales en Python.
Conversiones válidas
12345678# Converting numeric inputs for a shopping calculator quantity = 3 price_str = "2.5" discount_factor = "1e3" # scientific notation for 1000 print(float(quantity)) # 3.0 → integer converted to float print(float(price_str)) # 2.5 → string price converted to float print(float(discount_factor)) # 1000.0 → converts from scientific notation
Estos generan ValueError
1float("2,5") # ValueError - use a dot, not a comma
Conversión a str
str(x) crea una representación de cadena legible para humanos. Se recomienda usar f-strings al construir mensajes.
12345678910# Formatting a student's exam result student_age = 42 average_score = 3.5 print(str(student_age)) # "42" → number converted to string print(str(average_score)) # "3.5" → float converted to string student_name, final_score = "Ada", 98 report_message = f"{student_name} scored {final_score} points on the exam." print(report_message)
Conversión a bool
bool(x) sigue las reglas de veracidad de Python.
- Números:
0esFalse, cualquier otro número esTrue; - Cadenas:
""(vacía) esFalse, cualquier cadena no vacía esTrue(incluso"0"y"False").
123456789101112# Checking how different user inputs behave as boolean values login_attempts = 0 notifications = 7 username = "" user_id = "0" status = "False" print(bool(login_attempts)) # False → 0 means no attempts yet print(bool(notifications)) # True → non-zero means new notifications print(bool(username)) # False → empty string means no username entered print(bool(user_id)) # True → any non-empty string is truthy print(bool(status)) # True → text "False" is still a non-empty string
Errores a evitar
int("2.5")generaValueError- analizar primero comofloat(), luego truncar o redondear;- Hábito local:
"2,5"no es válido - usar"2.5"; - Guiones bajos en cadenas de entrada:
"1_000"no es válido - eliminar los guiones bajos primero:"1_000".replace("_", ""); - Sorpresa de veracidad:
bool("0")esTrue- comparar el contenido de la cadena explícitamente si es necesario, por ejemplos == "0".
1. ¿Qué produce cada línea?
2. ¿Qué llamada genera un ValueError?
3. Elige la afirmación correcta.
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Awesome!
Completion rate improved to 3.45
Esenciales de Conversión de Tipos
Desliza para mostrar el menú
La conversión de tipos permite mover valores entre los tipos principales de Python para que puedan ser comparados, calculados o mostrados.
Conversión a int
int(x) crea un entero.
- Desde un int: devuelve el mismo número;
- Desde un float: trunca hacia cero (por ejemplo,
int(2.9)devuelve2,int(-2.9)devuelve-2); - Desde una cadena: la cadena debe representar un entero (los espacios y el signo son opcionales).
Conversiones válidas
12345678910# Converting different types of user input to integers age_input = " 42 " temperature_reading = 2.9 negative_balance = -2.9 print(int(age_input)) # 42 → clean string converted to int print(int(temperature_reading)) # 2 → fractional part truncated print(int(negative_balance)) # -2 → also truncates toward zero print(int("7")) # 7 → string number becomes integer print(int(" -15 ")) # -15 → handles spaces and sign
Estos generan ValueError
12int("2.5") # ValueError - not an integer string int("42a") # ValueError
Conversión a float
float(x) crea un número de punto flotante.
- Funciona para enteros y cadenas en notación decimal o científica;
- Las comas no son puntos decimales en Python.
Conversiones válidas
12345678# Converting numeric inputs for a shopping calculator quantity = 3 price_str = "2.5" discount_factor = "1e3" # scientific notation for 1000 print(float(quantity)) # 3.0 → integer converted to float print(float(price_str)) # 2.5 → string price converted to float print(float(discount_factor)) # 1000.0 → converts from scientific notation
Estos generan ValueError
1float("2,5") # ValueError - use a dot, not a comma
Conversión a str
str(x) crea una representación de cadena legible para humanos. Se recomienda usar f-strings al construir mensajes.
12345678910# Formatting a student's exam result student_age = 42 average_score = 3.5 print(str(student_age)) # "42" → number converted to string print(str(average_score)) # "3.5" → float converted to string student_name, final_score = "Ada", 98 report_message = f"{student_name} scored {final_score} points on the exam." print(report_message)
Conversión a bool
bool(x) sigue las reglas de veracidad de Python.
- Números:
0esFalse, cualquier otro número esTrue; - Cadenas:
""(vacía) esFalse, cualquier cadena no vacía esTrue(incluso"0"y"False").
123456789101112# Checking how different user inputs behave as boolean values login_attempts = 0 notifications = 7 username = "" user_id = "0" status = "False" print(bool(login_attempts)) # False → 0 means no attempts yet print(bool(notifications)) # True → non-zero means new notifications print(bool(username)) # False → empty string means no username entered print(bool(user_id)) # True → any non-empty string is truthy print(bool(status)) # True → text "False" is still a non-empty string
Errores a evitar
int("2.5")generaValueError- analizar primero comofloat(), luego truncar o redondear;- Hábito local:
"2,5"no es válido - usar"2.5"; - Guiones bajos en cadenas de entrada:
"1_000"no es válido - eliminar los guiones bajos primero:"1_000".replace("_", ""); - Sorpresa de veracidad:
bool("0")esTrue- comparar el contenido de la cadena explícitamente si es necesario, por ejemplos == "0".
1. ¿Qué produce cada línea?
2. ¿Qué llamada genera un ValueError?
3. Elige la afirmación correcta.
¡Gracias por tus comentarios!