Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Основи Перетворення Типів | Взаємодія Між Різними Типами Даних
Типи даних у Python

bookОснови Перетворення Типів

Перетворення типів дозволяє переходити між основними типами Python, щоб значення можна було порівнювати, обчислювати або відображати.

Перетворення у int

int(x) створює ціле число.

  • З int: повертає те саме число;
  • З float: відкидає дробову частину у напрямку до нуля (наприклад, int(2.9) повертає 2, int(-2.9) повертає -2);
  • З рядка: рядок має представляти ціле число (дозволяються пробіли та знак на початку). Python також дозволяє підкреслення всередині цифр, наприклад, "1_000" — але лише якщо:
  • Підкреслення між цифрами;
  • Воно не на початку або в кінці ("_100", "100_");
  • Воно не повторюється і не стоїть поруч із десятковою крапкою ("1__000", "1_.5").

Коректні перетворення

1234567
age_input = " 42 " print(int(age_input)) # 42 print(int(2.9)) # 2 print(int(-2.9)) # -2 print(int("7")) # 7 print(int(" -15 ")) # -15 print(int("1_00_0")) # 1000
copy

Викликають ValueError

12
int("2.5") # ValueError - not an integer string int("42a") # ValueError
copy

Перетворення у float

float(x) створює число з плаваючою комою.

  • Працює для цілих чисел та рядків у десятковому або науковому форматі запису ("3.14", "1e2", "5E-3");
  • Кома не є десятковим роздільником у Python ("2,5", "2.5");
  • Python дозволяє підкреслення всередині цифр у числових рядках, але лише якщо:
  • Підкреслення між цифрами;
  • Воно не на початку або в кінці ("_3.14", "3.14_");
  • Воно не поруч із десятковою крапкою або не повторюється ("3_.14", "3.__14");
  • Науковий запис також повинен відповідати цим правилам ("1e_3").

Коректні перетворення

1234
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0 print(float("1_000.1_234")) # 1000.1234
copy

Ці викликають ValueError

1
float("2,5") # ValueError - use a dot, not a comma
copy

Перетворення до str

str(x) створює зручне для читання рядкове представлення. Для формування повідомлень рекомендується використовувати f-рядки.

123
print(str(42)) # "42" print(str(3.5)) # "3.5" print(f"Ada scored {98} points.")
copy

Перетворення до bool

bool(x) дотримується правил істинності Python.

  • Числа: 0 — це False, будь-яке інше число — True;
  • Рядки: "" (порожній) — це False, будь-який непорожній рядок — True (навіть "0" та "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Помилки, яких слід уникати

  • int("2.5") викликає ValueError — спочатку розпарсити як float(), потім обрізати або округлити;
  • Локальна звичка: "2,5" є некоректним — використовуйте "2.5";
  • Неочікувана істинність: bool("0") дорівнює True — порівнюйте вміст рядка явно за потреби, наприклад s == "0".

1. Який виклик призведе до ValueError?

2. Оберіть правильне твердження.

question mark

Який виклик призведе до ValueError?

Select the correct answer

question mark

Оберіть правильне твердження.

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 1

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Suggested prompts:

Can you explain more about how underscores work in numeric strings?

What happens if I try to convert a string with spaces or special characters to int or float?

Can you show examples of converting between these types in more complex scenarios?

bookОснови Перетворення Типів

Свайпніть щоб показати меню

Перетворення типів дозволяє переходити між основними типами Python, щоб значення можна було порівнювати, обчислювати або відображати.

Перетворення у int

int(x) створює ціле число.

  • З int: повертає те саме число;
  • З float: відкидає дробову частину у напрямку до нуля (наприклад, int(2.9) повертає 2, int(-2.9) повертає -2);
  • З рядка: рядок має представляти ціле число (дозволяються пробіли та знак на початку). Python також дозволяє підкреслення всередині цифр, наприклад, "1_000" — але лише якщо:
  • Підкреслення між цифрами;
  • Воно не на початку або в кінці ("_100", "100_");
  • Воно не повторюється і не стоїть поруч із десятковою крапкою ("1__000", "1_.5").

Коректні перетворення

1234567
age_input = " 42 " print(int(age_input)) # 42 print(int(2.9)) # 2 print(int(-2.9)) # -2 print(int("7")) # 7 print(int(" -15 ")) # -15 print(int("1_00_0")) # 1000
copy

Викликають ValueError

12
int("2.5") # ValueError - not an integer string int("42a") # ValueError
copy

Перетворення у float

float(x) створює число з плаваючою комою.

  • Працює для цілих чисел та рядків у десятковому або науковому форматі запису ("3.14", "1e2", "5E-3");
  • Кома не є десятковим роздільником у Python ("2,5", "2.5");
  • Python дозволяє підкреслення всередині цифр у числових рядках, але лише якщо:
  • Підкреслення між цифрами;
  • Воно не на початку або в кінці ("_3.14", "3.14_");
  • Воно не поруч із десятковою крапкою або не повторюється ("3_.14", "3.__14");
  • Науковий запис також повинен відповідати цим правилам ("1e_3").

Коректні перетворення

1234
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0 print(float("1_000.1_234")) # 1000.1234
copy

Ці викликають ValueError

1
float("2,5") # ValueError - use a dot, not a comma
copy

Перетворення до str

str(x) створює зручне для читання рядкове представлення. Для формування повідомлень рекомендується використовувати f-рядки.

123
print(str(42)) # "42" print(str(3.5)) # "3.5" print(f"Ada scored {98} points.")
copy

Перетворення до bool

bool(x) дотримується правил істинності Python.

  • Числа: 0 — це False, будь-яке інше число — True;
  • Рядки: "" (порожній) — це False, будь-який непорожній рядок — True (навіть "0" та "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Помилки, яких слід уникати

  • int("2.5") викликає ValueError — спочатку розпарсити як float(), потім обрізати або округлити;
  • Локальна звичка: "2,5" є некоректним — використовуйте "2.5";
  • Неочікувана істинність: bool("0") дорівнює True — порівнюйте вміст рядка явно за потреби, наприклад s == "0".

1. Який виклик призведе до ValueError?

2. Оберіть правильне твердження.

question mark

Який виклик призведе до ValueError?

Select the correct answer

question mark

Оберіть правильне твердження.

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 1
some-alt