Курс Python → TypedDict для kwargs в Python 3.12
В Python 3.12 было введено нововведение, которое позволяет использовать TypedDict для определения типов **kwargs. Если вы работали с kwargs (аргументы с ключевыми словами) ранее, то вы, вероятно, знаете, что оператор двойная звездочка упаковывает переданные по имени аргументы в словарь. Теперь с помощью TypedDict (словарь с заданными типами значений) мы можем придать таким аргументам большую гибкость в определении типов.
TypedDict позволяет явно указать типы значений, которые могут содержаться в словаре kwargs. Это облегчает процесс проверки типов и обеспечивает более надежное поведение программы. При использовании TypedDict вы можете быть уверены, что передаваемые аргументы соответствуют ожидаемым типам данных.
from typing import TypedDict
class Person(TypedDict):
name: str
age: int
def greet_person(**kwargs: Person) -> None:
print(f"Hello, {kwargs['name']}! You are {kwargs['age']} years old.")
greet_person(name="Alice", age=30)
В приведенном выше примере кода мы создаем TypedDict с полями «name» типа str и «age» типа int. Затем мы определяем функцию greet_person, которая принимает аргументы kwargs с типом Person. При вызове функции мы передаем аргументы name и age, убедившись, что они соответствуют ожидаемым типам. Это позволяет более точно контролировать типы данных, что способствует более безопасной и надежной разработке кода.
Другие уроки курса "Python"
- Функция zip() для объединения списков
- TypedDict для kwargs в Python 3.12
- Python Метод Union Множеств
- Удаление специальных символов с помощью re.sub
- Удаление элемента по индексу в Python
- Манипуляция формой массива в Numpy
- Объединение списков в Python
- Резервирование символов в Python
- Pretty-printing JSON в Python
- Оценка выражений генератора в Python
- Запуск внешнего кода в Jupyter
- Создание списка через итерацию
- Операции со строками в Python
- Избегайте использования goto
- Создание объекта времени
- Работа с рекламными данными в Pandas
- Выключение компьютера с помощью Python
- Объединение, распаковка и деструктуризация
- Наследование в программировании
- Преобразование Excel в PDF с Spire.XLS
- Отслеживание выполнения программы с библиотекой tqdm
- Упрощение условных выражений с тернарным оператором
- Метод is_absolute() для PurePath
- Проверка условий в Python
- Документирование функций в Python
- Использование defaultdict в Python
- Создание пустых функций и классов в Python
- Ограничение итераций в Python
- Логирование в Python
- Атрибуты класса и экземпляра
- Использование функции product
- Частичное совпадение пользовательского ввода в Python 3.10
- Получение текущей даты и времени с помощью datetime
- Разница между датами
- Декодирование байтов в строку
- Удаление элементов по срезу
- UserList в Python: Описание и примеры использования
- Загрузка постов Instagram
- Удаление файлов и папок в Python
- Настройка нарезки списков
- Делегирование в Python
- Обработка исключений в Python
- Импорт с альтернативным именем
- Комментарии в Python
- Асинхронное выполнение задач в Python
- Хеширование паролей с солью















