Функція int() конвертує число або рядок в еквівалентне ціле число. Наприклад:
|
1 2 3 4 |
# Конвертуємо число з плаваючою крапкою в еквівалентне ціле число result = int(9.9) print('int(9.9):', result) |
Результат:
int(9.9): 9
Синтаксис функції int()
|
1 |
int(value, base) |
Параметри функції int()
Функція int() приймає два параметри:
value — будь-який числовий рядок, байтовий об’єкт чи число;
base (не обов’язково) — система числення, в якій в поточний момент перебуває значення.
Значення, яке повертає функція int()
Функція int() повертає:
цілу частину числа — для одного аргументу (будь-яке число);
0 — якщо немає аргументів;
цілочисельне представлення числа із зазначеним base (0, 2, 8, 10, 16).
Приклад №1: Функція int() в Python з одним аргументом
|
1 2 3 4 5 6 7 8 |
# Функція int() із цілим числом print("int(123) is:", int(123)) # Функція int() з числом з плаваючою крапкою print("int(123.23) is:", int(123.23)) # Функція int() з числовим рядком print("int('123') is:", int("123")) |
Результат:
int(123) is: 123
int(123.23) is: 123
int('123') is: 123
Ми вивели на екран цілочисельний еквівалент цілого числа, числа з плаваючою крапкою та рядкового числа.
Приклад №2: Функція int() із двома аргументами
|
1 2 3 4 5 6 7 8 |
# Конвертуємо рядок (у двійковому форматі) у ціле число print("For 0b101, int is:", int("0b101", 2)) # Конвертуємо рядок (у вісімковому форматі) у ціле число print("For 0o16, int is:", int("0o16", 8)) # Конвертуємо рядок (у шістнадцятковому форматі) у ціле число print("For 0xA, int is:", int("0xA", 16)) |
Результат:
For 0b101, int is: 5
For 0o16, int is: 14
For 0xA, int is: 10
Приклад №3: Функція int() з користувацькими об’єктами
Навіть якщо об’єкт не є числом, ми все одно можемо конвертувати його в цілий об’єкт, перевизначивши методи __index__() та __int__() класу, щоб вони повертали число. Ці два методи ідентичні. Нова версія Python використовує метод __index__(). Наприклад:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
class Person: age = 23 def __index__(self): return self.age # def __int__(self): # return self.age person = Person() # Функція int() з нецілочисельним об'єктом person print("int(person) is:", int(person)) |
Результат:
int(person) is: 23
Тут клас Person не є цілочисельним типом. Але ми все одно можемо повернути змінну age (яка є цілим числом) за допомогою функції int().
