🔖 Справочник команд и синтаксиса

⚡ Краткий справочник

  • try/except — перехват исключений.
  • except (A, B) as e: — несколько типов и доступ к ошибке.
  • else — код при успехе; finally — код в любом случае.
  • raise ValueError("msg") — возбуждение исключения.
  • logging.basicConfig(level=logging.INFO) — настройка логирования.
  • os.getcwd(), os.listdir("."), os.path.join(...) — работа с путями.
  • sys.argv — аргументы командной строки.

Синтаксис обработки исключений

КонструкцияОписаниеПример
try:Код, который может вызвать исключениеtry: 1 / 0
except Type:Обработчик конкретного исключенияexcept ZeroDivisionError:
except (T1, T2):Обработка нескольких типовexcept (ValueError, TypeError):
except Type as e:Получить объект исключенияexcept ValueError as e: print(e)
else:Выполняется, если исключения не былоelse: print("OK")
finally:Выполняется всегдаfinally: print("end")
raise Type("msg")Возбудить исключение вручнуюraise ValueError("bad")

Настройка logging

Параметр / плейсхолдерОписание
level=logging.DEBUGУровень логирования: DEBUG, INFO, WARNING, ERROR, CRITICAL
filename="app.log"Имя файла для записи
format="..."Формат строки лога
%(asctime)sВремя
%(levelname)sУровень
%(filename)sИмя файла
%(lineno)dНомер строки
%(message)sТекст сообщения

Основные функции os

ФункцияНазначение
os.getcwd()Текущая рабочая директория
os.chdir(path)Сменить текущую директорию
os.listdir(path)Список файлов и папок в директории
os.mkdir(path)Создать одну директорию
os.makedirs(path, exist_ok=True)Создать вложенные директории
os.path.exists(path)Проверить существование пути
os.path.isfile(path)Является ли путь файлом
os.path.isdir(path)Является ли путь директорией
os.path.abspath(path)Абсолютный путь
os.path.basename(path)Имя файла или папки
os.path.dirname(path)Директория без имени файла
os.path.split(path)Разделить путь на директорию и файл
os.path.join(a, b, ...)Соединить компоненты пути
os.walk(path)Рекурсивный обход директории
os.rename(src, dst)Переименовать или переместить файл

Модуль sys

Функция / переменнаяНазначение
sys.argvСписок аргументов командной строки
sys.exit(code)Завершить программу с кодом
sys.pathСписок путей для поиска модулей

Частые паттерны

# 1. Запрос корректного числа
while True:
    try:
        value = float(input("Введите число: "))
    except ValueError:
        print("Некорректное число, попробуйте снова.")
    else:
        break


# 2. Безопасное деление с логированием
import logging

logging.basicConfig(filename="errors.log", level=logging.ERROR)

try:
    result = 10 / 0
except ZeroDivisionError as e:
    logging.error(f"Ошибка: {e}")


# 3. Рекурсивный поиск файлов по расширению
import os

for root, dirs, files in os.walk("."):
    for file in files:
        if file.endswith(".txt"):
            print(os.path.join(root, file))


# 4. Аргументы командной строки
import sys

if len(sys.argv) > 1:
    print(f"Первый аргумент: {sys.argv[1]}")