Python Completo
Autor
Paulo Coutinho
Idioma
Portuguese
Nível
Iniciante
Tipo de Curso
Padrão
Acesso ao Curso
Login necessário
Faça login para acessar este curso
Descrição do Curso
A linguagem de programação Python é uma das mais versáteis e utilizadas atualmente, destacando-se pela sintaxe simples, clara e próxima da linguagem humana, o que facilita o aprendizado de iniciantes e, ao mesmo tempo, atende às necessidades de programadores experientes.
Ela é considerada multiparadigma, permitindo a construção de soluções estruturadas, orientadas a objetos e até funcionais. Sua ampla comunidade garante constante evolução e uma imensa quantidade de bibliotecas e frameworks prontos para uso em diferentes áreas.
Entre suas principais vantagens estão a portabilidade (funciona em praticamente todos os sistemas operacionais), a grande produtividade (com menos código é possível criar programas robustos) e a integração com outras linguagens e tecnologias.
O Python é aplicado em diversos contextos, como:
-
Desenvolvimento web (sites, sistemas e APIs).
-
Automação de tarefas (scripts que simplificam processos repetitivos).
-
Ciência de dados e estatística (análise, visualização e modelagem de dados).
-
Inteligência artificial e aprendizado de máquina (processamento de linguagem natural, reconhecimento de imagens e muito mais).
-
Desenvolvimento de jogos e aplicações gráficas.
-
Educação (primeira linguagem de muitos cursos por sua simplicidade e clareza).
Um curso completo de Python geralmente aborda, em ordem progressiva:
-
Fundamentos da lógica de programação.
-
Estruturas básicas (variáveis, operadores, tipos de dados).
-
Estruturas de controle (condicionais, laços de repetição).
-
Funções e modularização.
-
Estruturas de dados (listas, tuplas, dicionários e conjuntos).
-
Manipulação de arquivos.
-
Programação orientada a objetos.
-
Introdução a bibliotecas para aplicações específicas (como automação, dados ou web).
Assim, aprender Python não é apenas dominar uma linguagem de programação, mas adquirir uma ferramenta prática e flexível, capaz de ser aplicada em inúmeros setores da tecnologia e da ciência.
Sobre Este Curso
Este curso apresenta os conceitos de lógica de programação de maneira clara e prática, ajudando você a criar seus primeiros programas e a desenvolver as bases necessárias para crescer no universo da tecnologia.
Conteúdo do Curso
Introdução
Por que aprender Python?
Python no Mercado de Trabalho
Instalação
Versão do Python
Instalação do Python
Instalação do VS Code
Instalando o Python no VS Code
Linguagem Python
PEP8 - Boas Práticas
O que são variáveis
O tipo numérico
O tipo ponto flutuante
O tipo booleano
O tipo string
Escopo de variáveis
PEP8 — Boas práticas
Estruturas lógicas e condicionais
Condicionais: IF, ELSE, ELIF
Operadores lógicos: AND, OR, NOT, IS
Estruturas de repetição
O loop FOR
Entendendo o RANGE
O loop WHILE
Saindo do loop com BREAK
Coleções
Listas
Tuplas
Dicionários
Mapas
Conjuntos
Módulo Collections — Counter
Módulo Collections — DefaultDict
Módulo Collections — OrderedDict
Módulo Collections — NamedTuple
Módulo Collections — Deque
Funções
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 *args
Entendendo **kwargs
Comprehensions
List Comprehension — Parte 1
List Comprehension — Parte 2
Listas aninhadas
Dictionary Comprehension
Set Comprehension
Expressões Lambdas e Funções Integradas
Utilizando lambdas
Função map
Função filter
Função reduce
Funções any e all
Generators
Função sorted
Funções min e max
Função reversed
Funções len, abs, sum e round
Função zip
Debugando e Tratando erros
Erros mais comuns
Levantando erros com raise
O bloco try/except
Try, Except, Else e Finally
Debugando código com PDB
Trabalhando com Módulos
O módulo random
Módulos Built-in
Módulos customizados
Instalando e utilizando módulos externos
Pacotes
Dunder Main e Dunder Name
Leitura e Escrita em Arquivos
Leitura de arquivos
Seek e cursores
O comando with
Escrevendo em arquivos
Modos de arquivos
StringIO
Sistema de arquivos — Navegação
Sistema de arquivos — Manipulação
Iteradores e Geradores
Entendendo iterators e iteráveis
Criando sua própria versão de loop
Escrevendo um iterador customizado
Geradores
Teste de memória com geradores
Teste de velocidade com expressões geradoras
Decoradores
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 decorador
Orientação a Objetos
O que é orientação a objetos?
Classes
Atributos
Métodos
Objetos
Abstração e encapsulamento
Herança e Polimorfismo
Herança
Propriedades
O método super()
Herança múltipla
MRO — Method Resolution Order
Polimorfismo
Métodos mágicos
Manipulando Arquivos CSV e JSON
Lendo arquivos CSV
Escrevendo em arquivos CSV
Conhecendo o Pickle
Trabalhando com JSON e Pickle
Trabalhando com Data e Hora
Manipulando data e hora
Trabalhando com deltas de data e hora
Métodos de datas e horas
Testes
Por que testar nosso código?
Assertions
Doctests
Introdução ao módulo Unittest
Outros tipos de assertions
Antes e após hooks
Gerenciamento de Memória
Alocação e gerência de memória
GIL — Global Interpreter Lock
Praticando mais com Edabit
Checagem de Tipos
Tipagem dinâmica x estática
Duck Typing
Type Hinting
Checagem de tipos com MyPy
Prós e contras do uso de Type Hinting
Fazendo uso de Annotations
Tipos em comentários
Tipos na prática