Переменная
Типы данных (int, float, str, bool)
Списки (list)
Кортежи (tuple)
Словари (dict)
Множества (set)
Условные операторы (if, elif, else)
Циклы (for, while)
Функция (def, return)
Ввод/вывод (input(), print())
Комментарии (#)
1) Переменная — это «коробка» для хранения данных. В Python не нужно указывать тип заранее — просто пишем:
name = "Алиса"
age = 25
Теперь в name хранится строка, а в age — число. Переменные помогают обращаться к данным повторно и работать с ними удобно.
2)В Python есть несколько основных типов:
- int — целое число (5, 100, -3)
- float — дробное число (3.14, -0.5)
- str — строка (текст): "Привет"
- bool — логическое значение: True или False
Пример:
price = 99.9 # float
is_ready = True # bool
message = "OK" # str
3)Список — это упорядоченная коллекция элементов. Можно хранить числа, строки или даже другие списки:
fruits = ["яблоко", "груша", "слива"]
Элементы в списке нумеруются с нуля: fruits[0] вернёт "яблоко". Списки можно изменять — добавлять, удалять, сортировать элементы.
4)Кортеж — почти как список, но нельзя изменить его содержимое:
coordinates = (10.5, 20.3)
Используется, когда данные должны оставаться неизменными. Занимает меньше памяти, чем список.
5)Словарь (dict) хранит пары «ключ — значение»:
user = {
"name": "Алиса",
"age": 25,
"is_active": True
}
Обращение по ключу: user["name"] → "Алиса".
6)Множество (set)— это набор уникальных элементов без определённого порядка:
colors = {"красный", "зелёный", "синий"}
Хорошо подходит для удаления повторов и операций с множествами (пересечение, объединение).
7)Условные операторы (if, elif, else)
Позволяют выполнять код в зависимости от условий:
age = 20
if age >= 18:
print("Совершеннолетний")
else:
print("Несовершеннолетний")
8)Циклы (for, while)
for — перебирает элементы:
for fruit in fruits:
print(fruit)
while — выполняет код, пока условие истинно:
i = 0
while i < 3:
print(i)
i += 1
9)Функции (def) позволяют переиспользовать код:
def greet(name):
print("Привет,", name)
greet("Алиса") # Привет, Алиса
Можно передавать аргументы и возвращать значения через return.
10)Ввод и вывод
print() — выводит текст в консоль:
print("Привет, мир!")
input() — запрашивает ввод пользователя:
name = input("Как тебя зовут? ")
11)Комментарии
Комментарии нужны для пояснений в коде. Они не влияют на выполнение:
# Это однострочный комментарий
Аргументы и параметры
Значения по умолчанию
Именованные аргументы
*args и **kwargs
Область видимости (scope)
Рекурсия
Лямбда-функции (lambda)
1) Аргументы и параметры
Параметры — это «места для данных» внутри функции, а аргументы — значения, которые мы передаём при вызове.
def greet(name): # name — параметр
print("Привет,", name)
greet("Алиса") # "Алиса" — аргумент
2) Значения по умолчанию
Можно указать стандартные значения для параметров. Если аргумент не передан, возьмётся значение по умолчанию.
def greet(name="Гость"):
print("Привет,", name)
greet() # Привет, Гость
greet("Алиса") # Привет, Алиса
3) Именованные аргументы
Аргументы можно передавать по имени, чтобы не запутаться с порядком.
def user_info(name, age):
print(name, age)
user_info(age=25, name="Алиса")
4) *args и **kwargs
*args — собирает позиционные аргументы в кортеж, **kwargs — именованные аргументы в словарь.
def demo(*args, **kwargs):
print("args:", args)
print("kwargs:", kwargs)
demo(1, 2, 3, name="Алиса", age=25)
# args: (1, 2, 3)
# kwargs: {'name': 'Алиса', 'age': 25}
5) Область видимости (scope)
Переменные бывают локальными (внутри функции) и глобальными (во всём файле). Локальные видны только внутри функции.
x = 10 # глобальная переменная
def func():
y = 5 # локальная переменная
print(x, y)
func()
print(x)
# print(y) # Ошибка: y не видно вне функции
6) Рекурсия
Функция может вызывать саму себя. Это удобно для задач вроде факториала или обхода структур.
def factorial(n):
if n == 1:
return 1
return n * factorial(n - 1)
print(factorial(5)) # 120
7) Лямбда-функции (lambda)
Анонимные (безымянные) функции, которые пишутся в одну строку. Удобны для простых действий.
square = lambda x: x ** 2
print(square(5)) # 25
nums = [1, 2, 3, 4]
print(list(map(lambda n: n * 2, nums)))
# [2, 4, 6, 8]
import / from import
Стандартная библиотека Python
pip и установка библиотек
venv / virtualenv
requirements.txt
1) import и from import
Модули позволяют разбивать код на логические части и переиспользовать его.
import math
print(math.sqrt(16)) # 4.0
Если нужен конкретный объект из модуля, используют from import:
from math import sqrt
print(sqrt(25)) # 5.0
Так код становится короче и читабельнее.
2) Стандартная библиотека Python
Python «из коробки» содержит сотни полезных модулей - без установки чего-либо.
- math - математические функции
- datetime - работа с датой и временем
- os - работа с файловой системой
- sys - взаимодействие с интерпретатором
- random - генерация случайных значений
import datetime
now = datetime.datetime.now()
print(now)
3) pip и установка библиотек
pip - менеджер пакетов Python. С его помощью устанавливаются внешние библиотеки.
pip install requests
После установки библиотеку можно импортировать в коде:
import requests
response = requests.get("https://example.com")
print(response.status_code)
4) venv / virtualenv
Виртуальное окружение - это изолированная среда для проекта со своими библиотеками.
Создание виртуального окружения:
python -m venv venv
Активация:
# Windows
venv\Scripts\activate
# macOS / Linux
source venv/bin/activate
Это спасает от конфликтов версий и делает проекты независимыми друг от друга.
5) requirements.txt
Файл со списком зависимостей проекта. Удобен для передачи и деплоя.
Пример содержимого:
requests==2.31.0
flask==3.0.0
Установка всех зависимостей одной командой:
pip install -r requirements.txt
Stack, Queue
List comprehension
Сортировка (sorted(), .sort())
Генераторы
Итераторы и итерируемые объекты
enumerate(), zip()
Класс (class)
Объект
Конструктор (init)
self
Атрибуты и методы
Наследование
Инкапсуляция
Полиморфизм
GIL (Global Interpreter Lock)
Индентация и отступы
Интерпретируемый язык
Динамическая типизация
Duck typing
PEP 8
Исключения (try / except)
Встроенные ошибки (IndexError, ValueError и др.)
raise
assert
Отладка (debugging)
Логирование (logging)
Открытие файлов (open, with)
Чтение/запись
Работа с CSV
JSON (импорт, сериализация)
os и pathlib
datetime
Unit-тесты (unittest)
doctest
pytest (если продвинутый уровень)
TDD
HTTP-запросы (requests)
JSON
API и взаимодействие с внешними сервисами
Flask / FastAPI (базово, если есть в курсах)
IDE (PyCharm, VSCode)
Интерпретатор
REPL / консоль
Git + GitHub (если используется на курсе)
Jupyter Notebook
requirements.txt / poetry / pipenv