+2 meses grátis
para
acelerar a sua carreira
Tá acabando!
00
DIAS
00
HORAS
00
MIN
00
SEG
APROVEITE
Carreiras
Ao Vivo
Pós-Graduação
Conteúdos
Para Empresas
Entrar
Ver planos
Carreiras
Ao Vivo
Pós-Graduação
Conteúdos
Para Empresas
Voltar
Trilhas por carreira
Ver Todas
IA
Engenharia de IA
Especialista em IA
Dados
Ciência de Dados
Análise de Dados
Governança de Dados
Cyber
Cloud Security
AppSec: Desenvolvimento Seguro de Aplicações
DevOps & Cloud
Platform Engineering
SRE (Site Reliability Engineering)
UX & UI
UI Design
UX Design
Mobile & Front-End
Desenvolvimento Mobile com Flutter
Desenvolvimento Front-End React
Back-End
Desenvolvimento Back-End PHP
Desenvolvimento Back-End .NET
Desenvolvimento Back-End Python
Desenvolvimento Back-End Java
Desenvolvimento Back-End Node.js
Negócios
Liderança
Recursos Humanos (RH)
Social Media Marketing
Growth Marketing
Voltar
Cursos Imersivos
Aprendizados ao vivo, intensivo e especializado, com turmas reduzidas e atenção personalizada
Certificações
Prepare-se para conquistar certificações valorizadas com aulas ao vivo
Voltar
Cursos por área de atuação
Ver Todos
Data
Data Analytics
Machine Learning Engineering
IA
IA Para Devs
IA Para Negócios - Gestão Estratégica e Liderança
Machine Learning Engineering
Cyber
Defensive Cyber Sec
Offensive Cyber Sec
Tech & Business
Digital Product Management
Growth Marketing
Tech Management
Dev
Arquitetura de Sistemas .Net
Arquitetura e Dev JAVA
Front-end Engineering
Full Stack Development
IA Para Devs
Software Architecture
DevOps e Arquitetura Cloud
Voltar
Praticar
Imersões
Eventos ao vivo e gratuitos que conectam comunidade e novas tecnologias
7 Days of Code
Desafios diários para praticar durante 7 dias
Aprofundar
Artigos
Biblioteca com artigos de todas as escolas e assuntos da Alura
Podcasts
Explore o universo de podcasts da Alura
Tech Guide
Um guia de carreira para se tornar um profissional em T
Vídeos Extras
Vídeos extras para aprofundar seus estudos
Nosso Impacto
Depoimentos de Alunos
Veja como nossos alunos evoluíram na prática e alcançaram novas oportunidades
Cases de Sucesso
Exclusivo para estudantes Alura
Aprenda a partir de casos reais de líderes de grandes empresas de tecnologia
Programação
_
Front-end
_
Data Science
_
Inteligência Artificial
_
DevOps
_
UX & Design
_
Mobile
_
Inovação & Gestão
_
Nome
e-mail
Qual área mais te interessa hoje?
UX e Usabilidade Aplicados em Mobile e Web
Java para Desenvolvimento Web
Java e Orientação a Objetos
Desenvolvimento Web com HTML, CSS e JavaScript
Python e Orientação a Objetos
C# e Orientação a Objetos
Qual o seu objetivo ao baixar a apostila da Caelum?
Reforçar um conhecimento que já tenho
Aprender uma nova tecnologia
Estou decidindo o que vou estudar no futuro
Vou tirar uma dúvida pontual
Me preparar para um novo trabalho
Tenho outro objetivo
baixar apostilas
Apostila
Python e Orientação a Objetos
sumário
1 Como aprender Python
1.1 O que é realmente importante?
1.2 Sobre os exercícios
1.3 Tirando dúvidas e indo além
2 O que é Python
2.1 Python
2.2 Breve História
2.3 Interpretador
2.4 Qual versão utilizar?
2.5 Download
2.6 Cpython, Jython, IronPython?
2.7 PEP - O que são e pra que servem
2.8 Onde usar e objetivos
2.9 Primeiro programa
2.10 Modo Interativo
2.11 Modo Script
2.12 Exercício: Modificando o programa
2.13 O que pode dar errado?
3 Variáveis e tipos embutidos
3.1 Tipos embutidos (_built-ins_)
3.2 Variáveis
3.3 Para saber mais: Nomes de variáveis
3.4 Instruções
3.5 Operadores Aritméticos
3.6 Strings
3.7 Entrada do usuário
3.8 Constantes
3.9 Comando if
3.10 Convertendo uma string para inteiro
3.11 O comando elif
3.12 Exercícios - Jogo da adivinhação
3.13 Comando while
3.14 Exercícios - Jogo com while
3.15 Comando for
3.16 Exercícios - Utilizando o for no jogo
4 Introdução ao Pycharm
4.1 IDE
4.2 Pycharm
4.3 Download e Instalação do PyCharm
4.4 Criando um Projeto
4.5 Executando código
4.6 Principais Atalhos
5 Estrutura de dados
5.1 Exercícios: Jogo da Forca
5.2 Sequências
5.3 Conjuntos
5.4 Dicionários
5.5 Exercícios: Estrutura de dados
6 Funções
6.1 O que é uma função?
6.2 Parâmetros de Função
6.3 Função com retorno
6.4 Retornando múltiplos valores
6.5 Exercícios: Funções
6.6 Número arbitrário de parâmetros (*args)
6.7 Número arbitrário de chaves (**kwargs)
6.8 Exercício - \*args e \*\*kwargs
6.9 Exercício - Função jogar()
6.10 Módulos e o comando import
7 Arquivos
7.1 Escrita de um arquivo
7.2 Fechando um arquivo
7.3 Escrevendo palavras em novas linhas
7.4 Exercícios
7.5 Lendo um arquivo
7.6 Lendo linha por linha do arquivo
7.7 Gerando um número aleatório
7.8 Exercícios - Leitura de arquivos
7.9 Para saber mais - comando with
7.10 Melhorando nosso código
7.11 Exercício - Refatorando o jogo da Forca
8 Orientação a Objetos
8.1 Funcionalidades
8.2 Exercício: Criando uma conta
8.3 Classes e Objetos
8.4 Construtor
8.5 Métodos
8.6 Métodos com retorno
8.7 Objetos são acessados por referência
8.8 Método transfere
8.9 Continuando com atributos
8.10 Tudo é objeto
8.11 Composição
8.12 Para saber mais: outros métodos de uma classe
8.13 Exercício: Primeira classe Python
9 Modificadores de acesso e métodos de classe
9.1 Encapsulamento
9.2 Atributos de classe
9.3 Métodos de classe
9.4 Para saber mais - Slots
9.5 Exercícios:
10 Pycharm e Orientação a objetos
10.1 Criando um Projeto
10.2 Criando uma classe
10.3 Executando código
10.4 Criando métodos
10.5 Exercício - Criando projeto banco no PyCharm
11 Herança e Polimorfismo
11.1 Repetindo código?
11.2 Reescrita de métodos
11.3 Invocando o método reescrito
11.4 Polimorfismo
11.5 Duck Typing
11.6 Exercício: Herança e Polimorfismo
11.7 Classes Abstratas
11.8 Exercícios - classes abstratas
12 Herança Múltipla e Interfaces
12.1 Problema do diamante
12.2 Mix-ins
12.3 Para sabe mais - Tkinter
12.4 Exercícios - Mix-Ins
12.5 Interfaces
12.6 (Opcional) Exercícios - Interfaces e classes Abstratas
13 Exceções e Erros
13.1 Exceções e tipos de erros
13.2 Tratando Exceções
13.3 Levantando exceções
13.4 Definir uma Exceção
13.5 Para saber mais: finally
13.6 Árvore de Exceções
13.7 Exercícios: Exceções
13.8 Outros Erros
14 Collections
14.1 UserList, UserDict e UserString
14.2 Para saber mais
14.3 Collections abc
14.4 Construindo um Container
14.5 Sized
14.6 Iterable
14.7 Exercício: Criando nossa Sequência
15 Apêndice - Python2 ou Python3?
15.1 Quais as diferenças?
15.2 A função print()
15.3 A função input()
15.4 Divisão decimal
15.5 Herança
16 Apêndice - Instalação
16.1 Instalando o Python no Windows
16.2 Instalando o Python no Linux
16.3 Instalando o Python no MacOS
16.4 Outras formas de utilizar o Python