Переменные, числа и строки в Python: f-строки и t-строки
Базовые типы: int, float, bool, str, имена и присваивание, f-строки. Для опытных: f-строки без ограничений на кавычки (3.12), шаблонные t-строки (3.14) и модуль math.integer (3.15).
- Объявлять переменные и понимать динамическую типизацию
- Форматировать вывод f-строками
- Понимать, зачем нужны t-строки
Mwanzo wa muhadhara
0.1 + 0.2 = 0.30000000000000004. Python сломался?
- Дробные числа хранятся в двоичном виде с погрешностью
- Так же ведут себя JavaScript, Java, C
- Для денег — Decimal или целые копейки
Наберите в консоли ноль целых одна десятая плюс ноль целых две десятых. Ответ вас удивит: вместо ровных трёх десятых получится длинный хвост с четвёркой на конце. Новички в этот момент пишут на форумы, что Python считает с ошибкой. Но дело не в Python, а в том, как любой компьютер хранит дробные числа. И раз уж мы пишем трекер расходов, с этим придётся разобраться до того, как деньги начнут теряться по копейке.
>>> 0.1 + 0.2
0.30000000000000004
>>> from decimal import Decimal
>>> Decimal("0.1") + Decimal("0.2")
Decimal('0.3')
Переменная — это ярлык, а не коробка
- Присваивание: имя = значение
- Имя указывает на объект в памяти
- Имена: snake_case, латиница, не с цифры
Часто говорят, что переменная — это коробка, куда кладут значение. Для Python точнее другая картинка: ярлык на верёвочке. Значение живёт само по себе, а вы привязываете к нему имя, чтобы потом обратиться. Можно перевязать ярлык на другое значение, можно повесить два ярлыка на одно. Знак равенства здесь означает не «равно», как в математике, а «привяжи это имя вот к этому». Это пригодится, когда дойдём до списков.
Четыре базовых типа
- int — целое: 250
- float — дробное: 12.5
- str — строка: "Кофе"
- bool — логическое: True / False
- type(x) — узнать тип
У каждого значения в Python есть тип, и от него зависит, что с этим значением можно делать. Целые числа, дробные, строки и логические значения «да» или «нет» — это четыре кирпичика, из которых строится почти всё остальное. Узнать тип можно встроенной функцией. А вот объявлять его заранее, как в Java или C, не нужно: Python сам понимает, что перед ним. Это называют динамической типизацией.
amount = 250 # int
price = 12.5 # float
item = "Кофе" # str
paid = True # bool
print(type(amount)) # <class 'int'>
print(type(item)) # <class 'str'>
Muhadhara kamili unapatikana kwa usajili
Kuna slaidi 11 zaidi katika toleo kamili.
Video, slaidi zote, maelezo, majaribio, AI tutor na mahojiano vitafunguka baada ya kuingia na kujisajili.
Ingia au jisajili JiandikisheYaliyomo kwenye muhadhara
- 0.1 + 0.2 = 0.30000000000000004. Python сломался?
- Переменная — это ярлык, а не коробка
- Четыре базовых типа
- Арифметика: два вида деления
- Грабли: round() округляет «по-банковски»
- Строки: срезы и методы
- Миф: строку и число можно просто сложить
- f-строки: вставляем значения прямо в текст
- ❓ Стоп-проверка: что напечатает этот код?
- ✅ Ответ: 3.5 3 2.3
- Что нового: f-строки без ограничений (3.12, PEP 701)
- Что нового: t-строки — шаблон, а не готовый текст (3.14)
- Что нового: модуль math.integer (3.15, PEP 791)
- Итог: трекер печатает аккуратную строку
Makala kuhusu somo hili
- Mifuatano katika Python: split, replace, strip, join, slices na f-strings
- Jinsi ya kupakua na kusakinisha Python kwenye Windows, macOS na Linux: hatua kwa hatua
- Moduli na pakiti za Python: import, pip, venv na maktaba kwa lugha rahisi
- Jinsi ya kujifunza Python kuanzia mwanzo: mpango wa kujifunza kwa wanaoanza hatua kwa hatua
- Kamusi katika Python (dict): kuunda, mbinu, kupitia, kupanga na frozendict
Mihadhara yote ya kozi hii
- Python 3.15 с нуля и для опытных: что нового и как учить
- Python 3.15: установка, REPL и первый скрипт за десять минут
- Переменные, числа и строки в Python: f-строки и t-строки
- Условия, циклы и match/case в Python: управляем ходом программы
- Списки, кортежи, словари и множества: frozendict в Python 3.15
- Comprehensions в Python: распаковка * и ** внутри (PEP 798)
- Функции и аннотации типов в Python: от def до sentinel
- Ошибки и исключения в Python 3.15: читаем трейсбек и подсказки «Did you mean»
- Модули, пакеты и ленивые импорты в Python 3.15 (PEP 810)
- Файлы, JSON и CSV в Python: pathlib и UTF-8 по умолчанию
- Классы и dataclasses в Python: ООП без лишнего кода
- Асинхронность и потоки в Python: asyncio, TaskGroup и free-threading
- Профилирование Python 3.15: Tachyon вместо cProfile и итоговый проект