Курс 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"
- Создание новых списков в Python
- Измерение времени выполнения с помощью time
- Списки в Python: основы
- Анонимные функции Lambda
- Работа со строками
- Работа с словарями в Python
- Сумма элементов списка
- Метод __imod__ для Python
- Отладка кода
- Подсчет вхождений элементов
- Оператор is в Python
- Округление чисел с помощью round
- Пропуск начальных строк с помощью dropwhile()
- Генераторы списков
- Атрибуты объекта в Python
- Работа с JSON в Python
- Создание циклической ссылки
- Извлечение статей с newspaper3k
- Округление банкира в Python
- Явный импорт переменных
- Перегрузка операторов в Python
- Курс по дообучению ChatGPT
- Оператор морж в Python 3.8
- Работа с байтовыми строками в Python
- Распаковка значений в Python
- Переворот списка в Python
- Метод gt в Python
- Отделение звука от видео
- Метод __ilshift__ для битового сдвига влево
- Отступы в Python
- Запрос DELETE с библиотекой requests
- Переопределение метода delitem в Python
- Объединение словарей в Python
- Контроль точности вывода чисел
- Возврат нескольких значений
- Поиск самого частого элемента
- Настройка нарезки списков
- Счетчик в Python: most_common()
- HTTP-запросы с библиотекой Requests
- Функция rsplit() в Python
- Отладка в Python
- Генераторы списков в Python
- Циклы в Python
- ChainMap.new_child() — добавление нового словаря
- Работа с типами данных в Python с помощью pydantic.
- Вывод баннеров















