Перейти к содержимому

3. Синтаксис и переменные

Иллюстрация к уроку

В Python нет фигурных скобок и точек с запятой. Вместо этого — отступы (4 пробела):

# Python
if x > 0:
print("положительное") # отступ = блок кода
print("ещё строка")
print("это вне блока")
// JavaScript
if (x > 0) {
console.log("положительное")
console.log("ещё строка")
}
console.log("это вне блока")

В Python нет var, let, const. Просто присвоение:

# Объявление переменных
name = "Python"
age = 30
price = 9.99
is_active = True
nothing = None # аналог null в JS
# Множественное присвоение
x = y = z = 0
# Распаковка (tuple unpacking)
a, b, c = 1, 2, 3
first, *rest = [1, 2, 3, 4, 5]
# first = 1, rest = [2, 3, 4, 5]
# snake_case для переменных и функций (не camelCase!)
user_name = "Яша"
max_retry_count = 3
is_logged_in = True
# UPPER_CASE для констант
MAX_CONNECTIONS = 100
API_URL = "https://api.example.com"
# PascalCase для классов
class UserProfile:
pass
# Строки
name = "Python" # двойные кавычки
message = 'Hello!' # одинарные кавычки
multiline = """
Многострочная
строка
"""
# Числа
integer = 42 # int
float_num = 3.14 # float
complex_num = 3 + 4j # complex (редко нужен)
# Булевы (заглавная буква!)
is_true = True
is_false = False
# None (аналог null/undefined)
result = None
# Проверка типа
print(type(name)) # <class 'str'>
print(type(42)) # <class 'int'>
print(type(3.14)) # <class 'float'>
# f-строки (f-strings) — рекомендуем!
name = "Яша"
age = 2
greeting = f"Привет, {name}! Тебе {age} года."
calculation = f"2 + 2 = {2 + 2}"
upper = f"Имя в верхнем регистре: {name.upper()}"
# Методы строк
text = " Hello, Python! "
print(text.strip()) # "Hello, Python!"
print(text.upper()) # " HELLO, PYTHON! "
print(text.lower()) # " hello, python! "
print(text.replace("Python", "World")) # " Hello, World! "
print(text.split(",")) # [' Hello', ' Python! ']
print("Python" in text) # True
# Форматирование чисел
pi = 3.14159
print(f"{pi:.2f}") # "3.14"
price = 1234567.89
print(f"{price:,.2f}") # "1,234,567.89"
# Арифметические
a, b = 10, 3
print(a + b) # 13 — сложение
print(a - b) # 7 — вычитание
print(a * b) # 30 — умножение
print(a / b) # 3.333... — деление (всегда float!)
print(a // b) # 3 — целочисленное деление
print(a % b) # 1 — остаток
print(a ** b) # 1000 — возведение в степень
# Сравнение
print(5 == 5) # True
print(5 != 3) # True
print(5 > 3) # True
print(5 >= 5) # True
# Логические
print(True and False) # False
print(True or False) # True
print(not True) # False
# В Python нет &&, ||, ! — только and, or, not
# Вывод
print("Hello!")
print("a", "b", "c") # "a b c"
print("a", "b", sep="-") # "a-b"
print("без новой строки", end="")
# Ввод (ждёт ввода пользователя)
name = input("Введи имя: ")
age = int(input("Введи возраст: ")) # input возвращает строку!
# Однострочный комментарий
"""
Многострочный комментарий
(на самом деле это строка, но используется как комментарий)
"""
# Docstring — документация функции
def greet(name: str) -> str:
"""
Возвращает приветствие для заданного имени.
Args:
name: Имя пользователя
Returns:
Строка приветствия
"""
return f"Hello, {name}!"

Python — динамически типизированный, но аннотации помогают IDE и читаемости:

# Без аннотаций
def add(a, b):
return a + b
# С аннотациями (рекомендуем!)
def add(a: int, b: int) -> int:
return a + b
name: str = "Python"
age: int = 30
prices: list[float] = [9.99, 14.99, 29.99]
user: dict[str, str] = {"name": "Яша", "role": "admin"}
# Задание 1: Сформируй строку приветствия
first_name = "Иван"
last_name = "Петров"
# Выведи: "Привет, Иван Петров!"
# Задание 2: Работа с числами
price = 1250.5
tax = 0.2
# Вычисли итоговую цену с налогом и выведи красиво
# Задание 3: Распаковка
coordinates = (55.7558, 37.6176) # Москва
# Распакуй в переменные lat и lon
# Задание 4: f-строки
template = ... # создай строку используя f-string
# "Пользователь: Яша | Роль: admin | Активен: True"
  1. Создай файл variables.py
  2. Объяви переменные: имя, фамилия, возраст, рост, активен ли пользователь
  3. Выведи красивую “карточку” пользователя используя f-строки
  4. Попробуй все арифметические операторы
  5. Поиграй со строковыми методами: upper(), split(), replace()

В следующем уроке — типы данных в деталях!