Python Fundamentos Básico
Variáveis e tipos dinâmicos
Em Python, uma variável é apenas um nome que aponta para um objeto. Diferente de linguagens como C ou Java, você não precisa declarar o tipo: basta atribuir um valor com = e o interpretador descobre o tipo sozinho. Isso é a tipagem dinâmica.
Apesar de dinâmica, a tipagem do Python é forte: operações entre tipos incompatíveis, como somar str com int, geram erro em vez de conversão automática. Para descobrir o tipo de um objeto, use type(); para verificar se ele é de um tipo (ou de uma subclasse), use isinstance().
O valor especial None representa a ausência de valor. Ele é o único objeto do tipo NoneType e costuma ser usado como valor inicial ou retorno de funções que não devolvem nada. Comparações com None devem ser feitas com is ou is not, não com ==.
Pontos-chave
- Atribuição com
=liga um nome a um objeto; o tipo é inferido em tempo de execução. - A tipagem é dinâmica (o tipo pode mudar a cada atribuição) e forte (não há coerção implícita entre tipos incompatíveis).
type(x)retorna a classe exata;isinstance(x, T)verifica sexé instância deTou de uma subclasse.Noneé o único valor deNoneTypee indica ausência de valor; compare comis/is not.- Use nomes descritivos e evite reutilizar a mesma variável para tipos muito diferentes.
# Atribuição: o nome aponta para um objeto; o tipo é inferido.
x = 10
print(x, type(x)) # int
# O mesmo nome pode receber outro tipo depois (tipagem dinâmica).
x = "dez"
print(x, type(x)) # str
# Tipagem forte: não há soma implícita entre str e int.
try:
print(x + 5)
except TypeError as e:
print("TypeError:", e)
# type() mostra a classe exata; isinstance() aceita subclasses.
print(type(3.14) is float) # True
print(isinstance(True, int)) # True: bool é subclasse de int
# None representa ausência de valor.
resultado = None
if resultado is None:
print("ainda não calculado")
# Funções sem return devolvem None implicitamente.
def saudacao(nome):
print(f"Olá, {nome}!")
retorno = saudacao("Ana")
print(retorno is None) # True