Основи Перетворення Типів
Свайпніть щоб показати меню
Перетворення типів дозволяє переходити між основними типами Python, щоб значення можна було порівнювати, обчислювати або відображати.
Перетворення у int
int(x) створює ціле число.
- З int: повертає те саме число;
- З float: відкидає дробову частину у напрямку до нуля (наприклад,
int(2.9)повертає2,int(-2.9)повертає-2); - З рядка: рядок має представляти ціле число (дозволяються пробіли та знак на початку).
Python також дозволяє підкреслення всередині цифр, наприклад,
"1_000"— але лише якщо: - Підкреслення між цифрами;
- Воно не на початку або в кінці (
"_100","100_"); - Воно не повторюється і не стоїть поруч із десятковою крапкою (
"1__000","1_.5").
Коректні перетворення
1234567age_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
Викликають ValueError
12int("2.5") # ValueError - not an integer string int("42a") # ValueError
Перетворення у float
float(x) створює число з плаваючою комою.
- Працює для цілих чисел та рядків у десятковому або науковому форматі запису (
"3.14","1e2","5E-3"); - Кома не є десятковим роздільником у Python (
"2,5","2.5"); - Python дозволяє підкреслення всередині цифр у числових рядках, але лише якщо:
- Підкреслення між цифрами;
- Воно не на початку або в кінці (
"_3.14","3.14_"); - Воно не поруч із десятковою крапкою або не повторюється (
"3_.14","3.__14"); - Науковий запис також повинен відповідати цим правилам (
"1e_3").
Коректні перетворення
1234print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0 print(float("1_000.1_234")) # 1000.1234
Ці викликають ValueError
1float("2,5") # ValueError - use a dot, not a comma
Перетворення до str
str(x) створює зручне для читання рядкове представлення. Для формування повідомлень рекомендується використовувати f-рядки.
123print(str(42)) # "42" print(str(3.5)) # "3.5" print(f"Ada scored {98} points.")
Перетворення до bool
bool(x) дотримується правил істинності Python.
- Числа:
0— цеFalse, будь-яке інше число —True; - Рядки:
""(порожній) — цеFalse, будь-який непорожній рядок —True(навіть"0"та"False").
12345print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
Помилки, яких слід уникати
int("2.5")викликаєValueError— спочатку розпарсити якfloat(), потім обрізати або округлити;- Локальна звичка:
"2,5"є некоректним — використовуйте"2.5"; - Неочікувана істинність:
bool("0")дорівнюєTrue— порівнюйте вміст рядка явно за потреби, наприкладs == "0".
1. Який виклик призведе до ValueError?
2. Оберіть правильне твердження.
Все було зрозуміло?
Дякуємо за ваш відгук!
Секція 4. Розділ 1
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Чудово!
Completion показник покращився до 3.45Секція 4. Розділ 1