Дробові числа
У Python два основні види чисел:
●
цілі (
int): 5, -12, 384400;●
дробові (
float): 7.9, -0.5, 3.14.Дробова частина відокремлюється крапкою, а не комою. Кома в Python розділяє значення, тому print(7,9) виведе 7 9, а не сім цілих дев'ять десятих.
Звичайне ділення / завжди дає дробове число, навіть якщо ділиться націло:
print(10 / 2) # 5.0 print(10 / 4) # 2.5
Іноді результат виходить дивним:
print(0.1 + 0.2) # 0.30000000000000004
Це не помилка Python. Комп'ютер зберігає дробові числа у двійковому вигляді, і деякі з них не можна записати абсолютно точно, як 1/3 у звичайних десяткових дробах. Тому результати округлюють.
Округлення: round, int, abs
round(число, знаків) округлює число до потрібної кількості знаків після крапки:
print(round(7.7777, 2)) # 7.78 print(round(7.7777, 1)) # 7.8 print(round(7.7777)) # 8 — без другого числа округлює до цілого
int(число) просто відкидає дробову частину, не округлюючи:
print(int(7.9)) # 7 print(round(7.9)) # 8
abs(число) дає модуль — число без знака мінус:
print(abs(-250)) # 250 print(abs(250)) # 250
Це зручно, коли потрібна різниця без знака: abs(a - b).
★ЦІКАВО
Цікаво:
round(2.5) дає 2, а round(3.5) дає 4. Python округлює рівно половинки до найближчого парного числа. Так роблять у науці, щоб похибки округлення не накопичувалися в один бік.Перевір себе: 4 задачі з автоперевіркою
▶ Розв'язувати задачіПідказки після помилок, розбір кожної задачі, бали й звання. Безкоштовно, можна без реєстрації.