Переменные, числа и строки в Python: f-строки и t-строки
Базовые типы: int, float, bool, str, имена и присваивание, f-строки. Для опытных: f-строки без ограничений на кавычки (3.12), шаблонные t-строки (3.14) и модуль math.integer (3.15).
- Объявлять переменные и понимать динамическую типизацию
- Форматировать вывод f-строками
- Понимать, зачем нужны t-строки
Début de la leçon
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'>
La leçon complète est réservée aux abonnés
Encore 11 diapositives dans la version complète.
La vidéo, toutes les diapositives, le résumé, les tests, le tuteur IA et l'entretien s'ouvrent après connexion et souscription à un abonnement.
Se connecter ou s'inscrire Souscrire un abonnementSommaire de la leçon
- 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)
- Итог: трекер печатает аккуратную строку
Articles sur cette leçon
- Chaînes de caractères en Python : split, replace, strip, join, tranches et f-strings
- Comment télécharger et installer Python sur Windows, macOS et Linux : pas à pas
- Modules et paquets Python : import, pip, venv et bibliothèques expliqués simplement
- Comment apprendre Python de zéro : plan d'apprentissage pour débutants, étape par étape
- Dictionnaires en Python (dict) : création, méthodes, parcours, tri et frozendict
Toutes les leçons du cours
- 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 и итоговый проект