El método int () devuelve un objeto entero de cualquier número o cadena.
La sintaxis del int()
método es:
int (x = 0, base = 10)
int () Parámetros
int()
El método toma dos argumentos:
- x : número o cadena que se convertirá en un objeto entero.
El argumento predeterminado eszero
. - base - Base del número en x .
Puede ser 0 (código literal) o 2-36.
Valor de retorno de int ()
int()
devuelve el método:
- un objeto entero del número o cadena dados trata la base predeterminada como 10
- (Sin parámetros) devuelve 0
- (Si se proporciona la base) trata la cadena en la base dada (0, 2, 8, 10, 16)
Ejemplo 1: ¿Cómo funciona int () en Python?
# integer print("int(123) is:", int(123)) # float print("int(123.23) is:", int(123.23)) # string print("int('123') is:", int('123'))
Salida
int (123) es: 123 int (123.23) es: 123 int ('123') es: 123
Ejemplo 2: ¿Cómo funciona int () para decimal, octal y hexadecimal?
# binary 0b or 0B print("For 1010, int is:", int('1010', 2)) print("For 0b1010, int is:", int('0b1010', 2)) # octal 0o or 0O print("For 12, int is:", int('12', 8)) print("For 0o12, int is:", int('0o12', 8)) # hexadecimal print("For A, int is:", int('A', 16)) print("For 0xA, int is:", int('0xA', 16))
Salida
Para 1010, int es: 10 Para 0b1010, int es: 10 Para 12, int es: 10 Para 0o12, int es: 10 Para A, int es: 10 Para 0xA, int es: 10
Ejemplo 3: int () para objetos personalizados
Internamente, el int()
método llama al método de un objeto __int__()
.
Entonces, incluso si un objeto no es un número, puede convertir el objeto en un objeto entero.
Puede hacer esto anulando los métodos __index__()
y __int__()
de la clase para devolver un número.
Estos dos métodos deberían devolver el mismo valor que las versiones anteriores de Python __int__()
, mientras que el __index__()
método de usos más nuevo .
class Person: age = 23 def __index__(self): return self.age def __int__(self): return self.age person = Person() print('int(person) is:', int(person))
Salida
int (persona) es: 23