tariel.ge › Полезное: бесплатные книги › Программирование: от нулей и единиц до PythonБесплатно · автор Тариел Бежанидзе
← Учебник по программированию ЛИСТ 14БЛОК 3 — PYTHON: ОСНОВЫРЕВ. 1
Глава 14 · Python: основы

Переменные и типы данных

Здесь философия Python, о которой шла речь в главе 08, впервые становится конкретным практическим отличием от Pascal из главы 07 — не просто разные слова, а разный подход к самой идее переменной.

Переменная — имя, указывающее на значение

Переменная в Python создаётся простым присваиванием, без предварительного объявления типа:

age = 25
name = "Тариэл"
height = 1.75
Прямой контраст с Pascal из главы 07

В Pascal переменную требовалось заранее объявить с явным указанием типа (var age: integer;) — попытка присвоить переменной значение неподходящего типа не проходила компиляцию вообще. Python устроен иначе — это язык с динамической типизацией: тип переменной определяется автоматически по тому значению, которое ей присвоено прямо сейчас, и может измениться при повторном присваивании:

x = 5 # x сейчас — целое число
x = "пять" # а теперь та же переменная x — строка, и это совершенно законно

Базовые типы данных

ТипНазвание в PythonПример
Целое числоint25, -3, 0
Дробное числоfloat1.75, -0.5, 3.0
Строка (текст)str"Тариэл", 'привет'
Логическое значениеboolTrue, False

Функция type() показывает текущий тип любой переменной — полезно, особенно учитывая, что тип может незаметно поменяться при повторном присваивании, как в примере выше:

print(type(age)) # <class 'int'>

Правила именования переменных

Явное преобразование типов

int("25") # строка "25" → целое число 25
float("1.75") # строка → дробное число
str(25) # число → строка "25"
int(3.9) # 3 — дробная часть отбрасывается, а не округляется!
Частые ловушки преобразования

Попытка int("привет") завершится ошибкой — строка, не являющаяся числом, не может быть превращена в число (подробнее о том, как обрабатывать такие ошибки — глава 21). Преобразование дробного числа в целое через int() всегда отбрасывает дробную часть, а не округляет её математически — int(3.9) даёт 3, а не 4, что иногда становится неожиданностью для тех, кто интуитивно ждёт округления.

Арифметические операторы

ОператорЗначениеПример
+Сложение5 + 3 → 8
-Вычитание5 - 3 → 2
*Умножение5 * 3 → 15
/Деление (всегда даёт дробный результат)7 / 2 → 3.5
//Целочисленное деление (округление вниз)7 // 2 → 3
%Остаток от деления7 % 2 → 1
**Возведение в степень2 ** 3 → 8

Обрати внимание на разницу между / и // — обычное деление в Python 3 всегда возвращает дробное число, даже если результат "ровный" (7 / 1 даёт 7.0, а не 7), тогда как // целенаправленно отбрасывает дробную часть результата.

Строки нельзя складывать с числами напрямую

print("Возраст: " + 25) # ОШИБКА: нельзя сложить строку и число напрямую
print("Возраст: " + str(25)) # правильно — сначала явно превратить число в строку

f-строки — удобное форматирование вывода

Современный и самый удобный способ вставить значения переменных прямо в текст — f-строка (буква f перед кавычками, значения переменных — в фигурных скобках):

age = 25
print(f"Возраст: {age} лет") # Возраст: 25 лет — без ручного str() и знаков +

Что дальше

Следующая глава — условия и циклы, те самые три конструкции структурного программирования (глава 07), теперь уже в реальном синтаксисе Python — с отступами вместо скобок Pascal и номеров строк BASIC.

Глава14 — Переменные и типы данных
Блок3 — Python: основы
Далее15 — Условия и циклы
СтатусГотово · рев. 1
Предыдущая глава ← 13 · Установка и первый скрипт Следующая глава 15 · Условия и циклы →

Книга бесплатна для чтения. Автор — Тариел Бежанидзе, компьютерный мастер в Батуми · tariel.ge · все бесплатные книги. Копировать текст целиком на другие сайты — только со ссылкой на источник.