Programação em Python do básico ao avançado
Olá, este repositório detalha meu progresso no Programação em Python do básico ao avançado da Geek University - Udemy.
Meus códigos, atividades e soluções que eu irei desenvolver para os desafios estarão todos listados abaixo.
Instalação e configuração no Windows
Instalação e configuração no Linux
Instalação e configuração no Mac
- Listas
- Tuplas
- Dicionários
- Mapas
- Conjuntos
- Módulo Collections - Counter
- Módulo Collections - Default Dict
- Módulo Collections - Ordered Dict
- Módulo Collections - Named Tuple
- Módulo Collections - Deque
- Definindo funções
- Funções com retorno
- Funções com parâmetro
- Funções com parâmetro padrão
- Documentando funções com Docstrings
- Entendendo o *args
- Entendendo o **kwargs
- List Comprehension - parte 1
- List Comprehension - parte 2
- Listas aninhadas
- Dictionary Comprehension
- Set Comprehension
- Utilizando lambdas
- Map
- Filter
- Reduce
- Any e All
- Generators
- Sorted
- Min e Max
- Reserved
- Len, Abs, Sum e Round
- Zip
- Erros mais comuns em Python
- Levantando os próprios erros com raise
- O bloco Try/Except
- Try, Except, Else e Finally
- Debugando código com PDB
- O módulo random
- Trabalhando com módulos Built-In
- Módulos customizados
- Instalando e utilizando módulos externos
- Pacotes
- Dunder Main e Dunder Name
- Leitura de arquivos
- Seek e Cursors
- O comando With
- Escrevendo em arquivos
- Modos de Arquivos
- StringIO
- Sistema de Arquivos - Navegação
- Sistema de Arquivos - Manipulação
- Entendendo Iteradores e Iteráveis
- Criando sua própria versão de loop
- Escrevendo um Interador Customizado
- Geradores
- Teste de Memória com Gerators
- Teste de Velocidade com Expressões Geradoras
- Funções de Maior Grandeza
- O que são decoradores?
- Decoradores com diferentes assinaturas
- Preservando Metadata com Wraps
- Forçando tipos de dados com um decorator
- O que é Orientação a Objetos?
- Classes
- Atributos
- Métodos
- Objetos
- Abstração e Encapsulamento
- Herança
- Propriedades
- O método super()
- Herança Múltipla
- MRO - Method Resolution Order
- Polimorfismo
- Métodos Mágicos
- Lendo arquivos CSV
- Escrevendo em arquivos CSV
- Conhecendo o Pickle
- Manipulando data e hora
- Trabalhando com deltas de data e hora
- Métodos de datas e horas
- Por que testar nosso código?
- Assertions (afirmações)
- Doctests
- Introdução ao módulo Unittest
- Outros tipos de assertions
- Antes e após hooks
- Quais os próximos passos?
- Bonus
- Alocação e Gerência de Memória em Python
- GIL - Python Global Interpreter Lock
- Como praticar mais Python? Edabit
- Tipos de Dados Dinâmicos x Estáticos
- Duck Typing (Tipagem Pato)
- Type Hinting
- Checagem de tipos com Mypy
- Prós e Contras do uso de Type Hints
- Fazendo uso de anotations
- Tipos em comentários
- Tipos em Python na Prática
- Criando o projeto
- Estruturando o código
- Implementação - Parte 1
- Implementação - Parte 2
- Executando o projeto
- Criando o projeto
- Estruturando o código
- Implementação - Parte 1
- Implementação - Parte 2
- Executando o projeto
- Criando o projeto
- Estruturando o código
- Implementação - Parte 1
- Implementação - Parte 2
- Executando o projeto