⚡
Python em 60 segundos
Dicas rápidas para escrever código Python melhor. Cada uma cabe em uma tela e resolve um problema real.
inverter.py
frutas = ['maca', 'banana', 'uva']
invertida = frutas[::-1]
print(invertida) # ['uva', 'banana', 'maca']
# Funciona com strings tambem
print('Python'[::-1]) # nohtyP
listas
⚡ 60s
Como inverter uma lista em Python
formatacao.py
preco = 49.9
taxa = 0.156
print(f'Preco: R${preco:.2f}') # R$49.90
print(f'Taxa: {taxa:.1%}') # 15.6%
print(f'Grande: {1000000:,.0f}') # 1,000,000
strings
⚡ 60s
Formatar números com f-strings
walrus.py
# Sem walrus
texto = input('Digite algo: ')
if len(texto) > 10:
print(f'{len(texto)} caracteres!')
# Com walrus :=
if (n := len(input('Digite: '))) > 10:
print(f'{n} caracteres!')
sintaxe
⚡ 60s
O operador morsa (:=) do Python
dict_get.py
usuario = {'nome': 'Ana', 'idade': 25}
# Perigoso - pode dar KeyError
# print(usuario['email'])
# Seguro - retorna o padrao
email = usuario.get('email', 'nao informado')
print(email) # nao informado
dicionarios
⚡ 60s
Acessar dicionário sem KeyError
enumerate.py
linguagens = ['Python', 'SQL', 'HTML']
# Jeito feio
# for i in range(len(linguagens)):
# Jeito pythonico
for i, lang in enumerate(linguagens, 1):
print(f'{i}. {lang}')
# 1. Python 2. SQL 3. HTML
loops
⚡ 60s
Iterar com índice usando enumerate()
comprehension.py
numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
pares = [n for n in numeros if n % 2 == 0]
print(pares) # [2, 4, 6, 8, 10]
quadrados = [n**2 for n in range(1, 6)]
print(quadrados) # [1, 4, 9, 16, 25]
listas
⚡ 60s
List comprehension em uma linha
unpacking.py
# Desempacotamento basico
nome, idade, cidade = 'Ana', 25, 'SP'
# Com * para pegar o resto
primeiro, *meio, ultimo = [1, 2, 3, 4, 5]
print(primeiro) # 1
print(meio) # [2, 3, 4]
print(ultimo) # 5
sintaxe
⚡ 60s
Desempacotar variáveis em Python
ternario.py
idade = 20
status = 'maior' if idade >= 18 else 'menor'
print(status) # maior
# Funciona em f-strings tambem!
print(f'Voce e {"adulto" if idade >= 18 else "jovem"}')
sintaxe
⚡ 60s
If/else em uma linha (operador ternário)
zip_listas.py
nomes = ['Ana', 'Carlos', 'Bia']
notas = [9.5, 7.8, 8.2]
for nome, nota in zip(nomes, notas):
print(f'{nome}: {nota}')
# Criar dicionario de uma vez
boletim = dict(zip(nomes, notas))
print(boletim)
listas
⚡ 60s