Metoda int () zwraca obiekt typu integer z dowolnej liczby lub ciągu.
Składnia int()
metody to:
int (x = 0, podstawa = 10)
int () Parametry
int()
metoda przyjmuje dwa argumenty:
- x - liczba lub ciąg do konwersji na obiekt typu integer.
Domyślnym argumentem jestzero
. - podstawa - podstawa liczby w x .
Może mieć wartość 0 (literał kodu) lub 2-36.
Wartość zwracana z int ()
int()
metoda zwraca:
- obiekt będący liczbą całkowitą z podanej liczby lub ciągu traktuje domyślną podstawę jako 10
- (Brak parametrów) zwraca 0
- (Jeśli podano podstawę) traktuje ciąg w podanej bazie (0, 2, 8, 10, 16)
Przykład 1: Jak int () działa w Pythonie?
# integer print("int(123) is:", int(123)) # float print("int(123.23) is:", int(123.23)) # string print("int('123') is:", int('123'))
Wynik
int (123) to: 123 int (123,23) to: 123 int ('123') to: 123
Przykład 2: Jak funkcja int () działa na liczbach dziesiętnych, ósemkowych i szesnastkowych?
# 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))
Wynik
Dla 1010 int to: 10 Dla 0b1010 int to: 10 Dla 12 int to: 10 Dla 0o12 int to: 10 Dla A int to: 10 Dla 0xA int to: 10
Przykład 3: int () dla obiektów niestandardowych
Wewnętrznie int()
metoda wywołuje metodę obiektu __int__()
.
Tak więc, nawet jeśli obiekt nie jest liczbą, możesz przekształcić obiekt w obiekt będący liczbą całkowitą.
Możesz to zrobić, przesłaniając __index__()
i __int__()
metody klasy, aby zwrócić liczbę.
Te dwie metody powinny zwracać tę samą wartość __int__()
, której używa starsze wersje Pythona , podczas gdy nowsze używają __index__()
metody.
class Person: age = 23 def __index__(self): return self.age def __int__(self): return self.age person = Person() print('int(person) is:', int(person))
Wynik
int (osoba) to: 23