Python int() función
Funciones integradas de Python3
int()Es una de las funciones integradas más utilizadas en Python, se usa para convertir datos de otros tipos al tipo entero.
En programación, a menudo necesitamos convertir cadenas, números de punto flotante u otros tipos de datos a enteros para realizar cálculos numéricos o comparaciones.int()Esta función nos ayuda a realizar esta conversión fácilmente.
Definición del término: intSíintegerAbreviatura de (entero), representa el tipo entero.
Sintaxis básica y parámetros
int()Es una función integrada que se puede llamar directamente, sin necesidad de importar ningún módulo.
Formato de sintaxis
int(x) int(x, base)
Descripción de parámetros
- Parámetro x:
- Tipo: cadena, número u otro objeto convertible a entero
- Descripción: el valor a convertir a entero. Si x es una cadena, se puede especificar la base en el parámetro base.
- Parámetro base(Opcional):
- Tipo: entero (2, 8, 10, 16)
- Descripción: la base de x, por defecto es 10 (decimal). Solo es válido cuando x es una cadena.
Descripción de la función
- Valor de retorno: Devuelve un objeto entero.
- Casos especiales:
int()Sin parámetros devuelve 0- Los números de punto flotante se redondean hacia abajo (truncamiento en dirección a cero).
- La cadena debe ser una representación numérica válida
Ejemplos
A través de una serie de ejemplos, de simples a complejos, dominaremos completamenteint()el uso de esta función.
Ejemplo 1: Uso básico - Conversión de números
Ejemplos
print(int(3.7)) # Salida: 3
print(int(-3.7)) # Salida: -3
# Convertir desde booleano
print(int(True)) # Salida: 1
print(int(False)) # Salida: 0
# Convertir desde cadena
print(int("42")) # Salida: 42
print(int(" 10 ")) # Salida: 10 (espacios eliminados automáticamente)
Resultado esperado de la ejecución:
3 -3 1 0 42 10
Análisis del código:
- Al convertir números de punto flotante a enteros, se trunca directamente la parte decimal (redondeo hacia cero), no se redondea.
- El valor booleano
Truese convierte a 1,Falsese convierte a 0. - Al convertir cadenas, se eliminan automáticamente los espacios en blanco al principio y al final.
Ejemplo 2: Conversión de bases
int()Admite la conversión de cadenas en diferentes bases a enteros decimales.
Ejemplos
print(int("1010", 2)) # Salida: 10
# Cadena octal (comienza con 0o)
print(int("12", 8)) # Salida: 10
# Cadena hexadecimal (comienza con 0x)
print(int("a", 16)) # Salida: 10
print(int("FF", 16)) # Salida: 255
# Cadena con prefijo
print(int("0b1010", 2)) # Salida: 10
print(int("0o12", 8)) # Salida: 10
print(int("0xff", 16)) # Salida: 255
Resultado esperado de la ejecución:
10 10 10 255 10 10 255
Análisis del código:
- El segundo parámetro especifica la base numérica de la cadena: 2 para binario, 8 para octal, 16 para hexadecimal.
- La cadena puede llevar prefijo (como
0b,0o,0x), o también puede no llevarlo. - En hexadecimal, a-f pueden ser mayúsculas o minúsculas.
Ejemplo 3: Escenarios de aplicación comunes
int()Hay muchos escenarios de aplicación en la programación real, como el procesamiento de la entrada del usuario, la limpieza de datos, etc.
Ejemplos
# Supongamos que el usuario ingresó "100"
user_input = "100"
price = int(user_input)
print(f"Precio del producto: {price} yuan") # Salida: Precio del producto: 100 yuan
# Cadena numérica leída desde un archivo
numbers_str = ["10", "20", "30"]
numbers = [int(n) for n in numbers_str]
print(numbers) # Salida: [10, 20, 30]
# Calcular la suma total
total = sum(numbers)
print(f"Total: {total}") # Salida: Total: 60
# Procesar una cadena con decimales (primero convertir a float y luego a int)
price_str = "19.99"
price = int(float(price_str))
print(f"Precio (entero): {price} yuan") # Salida: Precio (entero): 19 yuan
Resultado esperado de la ejecución:
商品价格: 100 元 [10, 20, 30] 总和: 60 价格(取整): 19 元
Este ejemplo muestraint()los usos comunes en aplicaciones reales, incluido el procesamiento de la entrada del usuario, la conversión de datos por lotes, etc.
Funciones integradas de Python3
Otras extensiones