Apostila de Python
Apoio rápido para revisar os conceitos do curso, ver exemplos e executar simulações dos códigos principais direto nesta página. Seus arquivos Python continuam separados e intactos.
Pesquise por assunto, palavra-chave ou nome de arquivo.
Como usar esta apostila
Use esta página como consulta: procure o assunto no índice, leia o resumo, observe o exemplo e clique em Executar exemplo quando houver botão. Os botões não alteram seus arquivos; eles apenas mostram a saída esperada dos conceitos no navegador.
Módulo 1
Base da linguagem: instalação, primeiro programa, variáveis, operadores, estruturas de controle e estruturas de dados.
Introdução ao Python
Python é uma linguagem de programação famosa por ter sintaxe simples. Ela é usada em automação, análise de dados, inteligência artificial, sites, APIs e scripts do dia a dia.
- Interpretada: o código é executado por um interpretador Python.
- Indentação: espaços no começo da linha definem blocos, como em
if,fore funções. - Case-sensitive:
idadeeIdadesão nomes diferentes.
1.1. Instalação e configuração
No terminal, você confirma se o Python está instalado com python --version. Em projetos com ambiente virtual, primeiro ativa a pasta .venv.
# PowerShell, dentro da pasta do projeto .\.venv\Scripts\Activate.ps1 # Ver a versão instalada python --version # Instalar dependências do projeto pip install -r requirements.txt
Se o PowerShell só imprimir o caminho do activate, faltou usar .\ antes do arquivo ou faltou chamar o script correto do PowerShell.
1.2. Seu primeiro programa Python
print() mostra algo na tela. Textos ficam entre aspas simples ou duplas.
print("Olá, mundo!")
print("Estou aprendendo Python.")
2.1. Variáveis
Variável é um nome que aponta para um valor guardado na memória. Use nomes claros, sem espaço, e de preferência em minúsculas com underline.
Número inteiro.
idade = 25
Número decimal.
preco = 9.99
Texto.
nome = "Ellen"
Verdadeiro ou falso.
tem_desconto = True
nome = "Ellen" idade = 23 altura = 1.65 estudando_python = True print(nome, idade, altura, estudando_python)
2.2. Operadores
Operadores fazem contas, comparações e combinações lógicas. Eles aparecem muito em condições, loops e cálculos.
a = 6 b = 3 print(a + b) # soma print(a - b) # subtração print(a * b) # multiplicação print(a / b) # divisão print(a // b) # divisão inteira print(a % b) # resto da divisão print(a ** b) # potência print(a > b) # comparação print((a > 5) and (b < 5)) # lógica
3. Estruturas de controle
Estruturas de controle mudam o caminho do programa. if decide, for repete sobre uma sequência e while repete enquanto uma condição for verdadeira.
idade = 18
if idade >= 18:
print("Maior de idade")
else:
print("Menor de idade")
for numero in range(1, 4):
print(numero)
contador = 1
while contador <= 3:
print(contador * 2)
contador += 1
4. Estruturas de dados: listas e tuplas
Listas e tuplas guardam vários valores em uma só variável. Listas podem mudar; tuplas não devem ser alteradas depois de criadas.
frutas = ["maçã", "banana", "laranja"]
frutas.append("uva")
frutas.insert(1, "abacaxi")
frutas.remove("banana")
print(frutas)
print(frutas[0])
print(frutas[-1])
ponto = (5, 6)
print(ponto[0])
print(ponto[1])
Lembrete de prova: o método que adiciona um item ao final da lista é append(). insert() adiciona em uma posição escolhida.
4.2. Dicionários
Dicionário guarda pares de chave e valor. É ótimo quando você quer identificar cada informação por nome.
pessoa = {
"nome": "Ellen",
"idade": 23,
"cidade": "Belo Horizonte"
}
print(pessoa["nome"])
print(pessoa.keys())
print(pessoa.values())
print(pessoa.items())
pessoa.update({"profissao": "Desenvolvedora"})
print(pessoa)
4.3. Conjuntos (set)
Conjunto é uma coleção sem ordem fixa e sem valores repetidos. Serve muito bem para remover duplicados e fazer operações como união e interseção.
conjunto1 = {1, 2, 3}
conjunto2 = {3, 4, 5}
print(conjunto1 | conjunto2) # união
print(conjunto1 & conjunto2) # interseção
print(conjunto1 - conjunto2) # diferença
print(conjunto1 ^ conjunto2) # diferença simétrica
cores = {"vermelho", "azul"}
cores.add("preto")
cores.discard("verde")
print(cores)
Módulo 2
Funções, erros, entrada e saída, arquivos, módulos, módulos próprios e pacotes.
5. Funções
Função é um bloco de código reutilizável. Ela pode receber parâmetros, executar uma tarefa e devolver um resultado com return.
def saudacao(nome):
print(f"Olá, {nome}!")
def soma(a, b):
return a + b
quadrado = lambda x: x ** 2
saudacao("Ellen")
print(soma(5, 3))
print(quadrado(4))
6. Tratamento de erros e exceções
Uma exceção é um erro que acontece durante a execução. O bloco try guarda o código que pode falhar, except trata o erro, else roda se não houver erro e finally roda no final de qualquer jeito.
try:
resultado = 10 / 2
except ZeroDivisionError:
print("Não é possível dividir por zero.")
else:
print(f"Sucesso! Resultado: {resultado}")
finally:
print("Finalizando processamento.")
Atenção para questões: em Python não usamos catch. Usamos try e except.
6.2. Exceções personalizadas
Você pode criar ou disparar erros específicos quando uma regra do seu programa for quebrada. Para disparar uma exceção, use raise.
def validar_idade(idade):
if idade < 0:
raise ValueError("Idade não pode ser negativa.")
return "Idade válida."
try:
print(validar_idade(-1))
except ValueError as erro:
print(f"Erro: {erro}")
7. Entradas/saídas
Entrada é informação recebida pelo programa, geralmente com input(). Saída é informação mostrada, geralmente com print(). O input() sempre retorna texto; para fazer contas, converta com int() ou float().
nome = input("Insira seu nome: ").capitalize()
idade = int(input("Insira sua idade: "))
print(f"Olá, {nome}! Você tem {idade} anos.")
if idade >= 18:
print("Você é maior de idade.")
else:
print("Você é menor de idade.")
7.1. Leitura e escrita de arquivos
Arquivos permitem salvar dados fora do programa. Os modos mais comuns são r para ler, w para escrever apagando o conteúdo antigo e a para adicionar no final.
with open("dados.txt", "r", encoding="utf-8") as arquivo:
conteudo = arquivo.read()
print(conteudo)
with open("dados.txt", "w", encoding="utf-8") as arquivo:
arquivo.write("Novo conteúdo")
with open("dados.txt", "a", encoding="utf-8") as arquivo:
arquivo.write("\nMais uma linha")
Use with open(...) quando puder. Ele fecha o arquivo automaticamente no final do bloco.
8. Importação e criação de módulos
Módulo é um arquivo .py que pode ser importado em outro arquivo. Isso evita repetir código e deixa o projeto mais organizado.
import math print(math.sqrt(25)) from math import sqrt print(sqrt(36)) import random print(random.randint(1, 10))
8.1. Criação de módulos próprios
Para criar seu próprio módulo, crie um arquivo Python com funções, classes ou variáveis e importe esse arquivo em outro código.
# meu_modulo.py
def saudar(nome):
print(f"Olá, {nome}!")
def calcular_soma(a, b):
return a + b
# outro_arquivo.py
import meu_modulo
meu_modulo.saudar("João")
resultado = meu_modulo.calcular_soma(5, 3)
print(resultado)
8.2. Pacotes
Pacote é uma pasta que organiza vários módulos. Para Python reconhecer uma pasta como pacote, normalmente ela possui um arquivo especial chamado __init__.py.
meu_pacote/
__init__.py
modulo1.py
modulo2.py
Depois, os módulos podem ser importados assim:
from meu_pacote import modulo1, modulo2 modulo1.funcao1() modulo2.funcao2()
Módulos e pacotes ajudam a manter o código legível, estruturado e fácil de manter. Em projetos maiores, essa organização faz muita diferença.
Laboratório de exemplos
Escolha um exemplo e clique em executar. Esta área mostra a saída esperada sem mexer em nenhum arquivo da pasta.
Expressão lógica
(not True) or (False and True)
Tabuada
for i in range(1, 11):
print(7, "x", i, "=", 7 * i)
Python real no navegador
Esta área usa Pyodide para executar Python dentro do navegador. Ela precisa de internet na primeira carga e não mexe nos arquivos do projeto.
Clique em Executar Python para carregar o interpretador.
Se essa área não carregar, use a seção "Como rodar seus arquivos reais" no terminal. O navegador comum não consegue abrir seus arquivos Python diretamente sem um interpretador.
Como rodar seus arquivos reais
Esta página simula exemplos no navegador. Para rodar os arquivos Python de verdade, use o terminal na pasta do projeto.
cd "C:\Users\lucas\Desktop\Python - Ellen" .\.venv\Scripts\Activate.ps1 python conceitosBasicosPython.py python listas.py python dicionario.py python conjuntos.py python funcoes.py python errosComunsPython.py python entradasSaidas.py python leituraEscritaArquivos.py python importacaoCriacaoModulos.py
Para os arquivos Flask, instale as dependências e rode um arquivo por vez:
pip install -r requirements.txt python tabuada.py python automacao.py python automacaoCriandoArquivoTxt.py
Depois de rodar um Flask, abra o endereço mostrado no terminal, geralmente http://127.0.0.1:5000.
Cola rápida
Tipos básicos
int: inteiro.float: decimal.str: texto.bool:TrueouFalse.
Listas
append(): adiciona no final.insert(): adiciona em posição específica.remove(): remove pelo valor.pop(): remove por índice ou remove o último.
Erros
try: tenta executar.except: trata o erro.else: roda se não houver erro.finally: roda no final sempre.raise: dispara uma exceção.
Arquivos
r: leitura.w: escrita apagando o anterior.a: adiciona no final.with open(): abre e fecha automaticamente.
Arquivos do projeto
Referência dos arquivos que existem na pasta e qual assunto cada um cobre.
conceitosBasicosPython.py
Assuntos: primeiro programa, variáveis, tipos básicos, operadores aritméticos, comparação e lógica.
python conceitosBasicosPython.py
listas.py
Assuntos: listas, índices positivos e negativos, métodos de listas, compreensão de listas e tuplas.
python listas.py
dicionario.py
Assuntos: dicionários, chaves, valores, items e update.
python dicionario.py
conjuntos.py
Assuntos: set, união, interseção, diferença, diferença simétrica e métodos de conjuntos.
python conjuntos.py
funcoes.py
Assuntos: def, chamada de função, parâmetros, return e lambda.
python funcoes.py
errosComunsPython.py
Assuntos: SyntaxError, NameError, TypeError, IndexError, try, except, else, finally e raise.
python errosComunsPython.py
entradasSaidas.py
Assuntos: input, print, conversão com int e condição com idade.
python entradasSaidas.py
leituraEscritaArquivos.py e dados.txt
Assuntos: leitura, escrita, append, close e with open.
python leituraEscritaArquivos.py
importacaoCriacaoModulos.py
Assuntos: import, from import, math, random, datetime, módulos próprios e pacotes.
python importacaoCriacaoModulos.py
Projetos Flask
Arquivos: tabuada.py, automacao.py, automacaoCriandoArquivoTxt.py e requirements.txt.
pip install -r requirements.txt python tabuada.py