Sequence de Collections ABC - 90% dos Devs Python erram aqui (Aula 6)
Автор: Otávio Miranda
Загружено: 2025-08-18
Просмотров: 534
Описание:
Na aula passada, aprendemos sobre a variância (covariância, contravariância e invariância). Agora, vamos dar o próximo passo e colocar a mão na massa: vamos aprender a criar nossas próprias classes de coleção implementando os protocolos do collections.abc. Ao terminar essa aula, você vai entender e saber implementar qualquer um Genérico ABC da biblioteca padrão do Python.
Nesse vídeo, vamos usar o Sequence[T] como nosso guia. Você vai descobrir que, ao implementar apenas dois métodos mágicos (__getitem__ e __len__), o Python te dá de graça uma infinidade de outros comportamentos, como fatiamento (slicing), iteração, o operador in, a função reversed() e muito mais!
Esta é uma aula fundamental para quem quer parar de apenas usar as coleções do Python e começar a entender como elas realmente funcionam por baixo dos panos.
Nesta aula da nossa playlist completa sobre Type Hints no Python, você vai aprender:
O que é o "contrato" de um Sequence e por que ele é a base para coleções ordenadas e imutáveis.
A usar @overload para tipar corretamente o __getitem__, que pode receber int ou slice.
Como tornar sua classe um iterador, implementando o protocolo de iteração (__iter__ e __next__).
A ver na prática todo o comportamento que sua classe "ganha de presente" ao herdar de Sequence.
Se você quer entender o Data Model do Python e ser capaz de criar seus próprios tipos de dados que se integram perfeitamente com a linguagem, esta aula foi feita para você.
E lembre-se: Type Hint é igual a Type Annotation (tipagem no Python).
Este vídeo é parte de uma playlist, essa é a SEXTA aula. Segue o link da playlist para acompanhar:
• Curso de Type Hints no Python do Básico Ao...
Link do repositório:
https://github.com/luizomf/typehints_...
Meus Cursos: https://www.otaviomiranda.com.br/
Newsletter: https://luizomf.substack.com/
Capítulos
00:00:00 - Criando nossas próprias coleções ABC com Sequence
00:02:51 - Entenda a abstração do genérico usado
00:06:49 - Sequence não funciona como Iterable, é mais restrita
00:09:49 - tuple é irmã de MutableSequence na hierarquia?
00:11:46 - Set não é Sequence e não tem _getitem__
00:14:29 - Dicionários são Mapping e MutableMappling
00:17:20 - Implementação da sua própria Sequence
00:20:07 - Entenda os overloads do _getitem_
00:25:21 - Type Narrowing ou Afunilamento de tipos
00:28:53 - Minha Sequence usa um dicionário para salvar dados
00:36:00 - Implementando fatiamento ou slicing no _getitem_
00:38:24 - Implementando _iter_ e _next_ para iteração
#Python #TypeHints #POO #Collections #PythonBrasil
Повторяем попытку...

Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: