Курс 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 с pandas
- Распаковка элементов последовательности
- Python enumerate() для работы с индексами
- Однострочники Python
- Поиск повторов в списке
- Перевод текста с Python Translator
- Имена объектов в Python
- Преобразование текста в нижний регистр
- Запуск внешних программ с subprocess
- Объединение словарей в Python
- Работа с collections в Python.
- Работа с модулем Calendar
- Combobox в Tkinter
- JSON в Python: модуль, dump, dumps, load
- Лямбда-функции для min/max
- Классы данных в Python
- %pinfo: получение информации об объекте
- Многоточие в Python
- Освоение Python
- Создание новой даты в Python
- Сложение матриц в NumPy
- Библиотека Chartify: руководство
- Многопоточность в Python
- Установка Git и AWS CLI
- Просмотр атрибутов и методов класса
- Изменение списка срезами
- Область видимости переменных
- Создание копии списка в Python
- Форматирование строк в Python
- Преобразование символов в нижний регистр
- Генерация QR-кодов с Python
- Метод getitem для доступа к элементам последовательности
- Отладка кода
- Работа с JSON данными в Python
- Работа с итераторами в Python
- Определение основы слова с showballstemmer
- Подсчет частоты элементов с Counter
- Создание словаря через dict comprehension
- Улучшенные подсказки для импорта в Python 3.12
- Удаление и повторная вставка ключа в OrderedDict
- Декораторы в Python















