Pacote de vários arquivos
Um pacote é uma pasta de módulos. O math era um módulo, um arquivo só. A bakery tem mais de um arquivo, e a própria pasta é o pacote. Nada é instalado e nenhum arquivo de dados é aberto. Você continua importando um nome. A diferença é que agora esse nome aponta para uma pasta. O nome da pasta é o que você importa, e cada arquivo lá dentro fica com o próprio nome.
def heat():
return "warm"
Este arquivo é bakery/oven.py. A heat devolve a palavra warm, mas não a imprime. Se você rodar o arquivo sozinho, a tela fica vazia. A linha que mostra warm está em outro arquivo. Uma função que nunca é chamada não escreve nada.
📊 A pasta e a linha de import
| Peça | O que faz |
|---|---|
| bakery/__init__.py | arquivo vazio que marca a pasta como pacote |
| bakery/oven.py | heat devolve warm e não imprime nada sozinha |
| from bakery import oven | o ponto liga a pasta ao módulo |
from bakery import oven
print(oven.heat())
A tela mostra warm. O ponto liga bakery a oven. Uma barra nesse lugar não é um import, e o programa para antes mesmo de rodar. Essa parada tem o nome de SyntaxError. A linha com a barra não está neste programa. O init.py pode ficar vazio; não coloque a heat nele. Quando a barra faz o programa parar, também não aparece None. A chamada é oven.heat(). heat não fica solto no segundo arquivo. O import entrega oven, e heat continua em oven.
A próxima página é a biblioteca que vem junto. Esta página só reúne módulos em uma pasta.
Uma pasta de módulos
O oven.py sozinho não mostra nada. O outro arquivo mostra warm. O ponto liga bakery a oven. O init.py pode ficar vazio. A próxima página é a biblioteca que vem junto.
🧠 Teste Seu Conhecimento
Teste Seu Conhecimento
Desafie-se com este questionário interativo e veja o quão bem você entende o tópico
📝 Instruções
- Leia cada pergunta cuidadosamente
- Selecione a melhor resposta para cada pergunta
- Você pode refazer o quiz quantas vezes quiser
- Seu progresso será mostrado no topo