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 utilizar 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")lanzaValueError- 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 primero los guiones bajos:"1_000".replace("_", ""); - Sorpresa de veracidad:
bool("0")esTrue- comparar explícitamente el contenido de la cadena 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
Genial!
Completion tasa mejorada a 5.26
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 utilizar 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")lanzaValueError- 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 primero los guiones bajos:"1_000".replace("_", ""); - Sorpresa de veracidad:
bool("0")esTrue- comparar explícitamente el contenido de la cadena 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!