Se você estiver trabalhando com Python, rapidamente encontrará o conceito de Módulos. Eles permitem que você estruture seu código e crie funções reutilizáveis. Isso não apenas é benéfico para a organização, mas também melhora a eficiência da sua programação. Neste tutorial, você aprenderá como criar e importar módulos em Python. Vamos ver como você pode trabalhar com um arquivo próprio para fornecer várias funções matemáticas e então usá-las em outro script Python.
Principais conclusões
- Módulos são simplesmente arquivos Python que contêm várias funções.
- A importação de módulos permite uma melhor estruturação do seu código.
- Você pode importar módulos sob diferentes nomes ou apenas importar funções específicas.
- Através de nomes de alias e importações seletivas, você evita conflitos de nomes.
Instruções passo a passo
Criar um módulo
Para criar um módulo em Python, você precisa primeiro de um arquivo com as funções apropriadas. Em nosso exemplo, criaremos um arquivo chamado arithmetik.py, que contém algumas funções matemáticas básicas como adição, subtração e multiplicação. Você pode criar o arquivo em qualquer editor de texto.

Em arithmetik.py, você define as funções individuais:
def subtrair(a, b): retornar a - b
def multiplicar(a, b): retornar a * b
Aqui temos três funções simples que você usará mais tarde em seu script principal.
Importar um módulo
Agora que você criou seu módulo arithmetik.py, pode usá-lo em outro script. Crie um segundo arquivo chamado rechner.py, que está no mesmo diretório que seu módulo.

No rechner.py, você importa o módulo com o seguinte comando:
Com isso, você pode acessar as funções do seu módulo. Defina algumas variáveis para demonstrar:
Agora você pode, por exemplo, chamar a função de adição e exibir o resultado:
Esta linha imprime o resultado da adição de a e b. Se você executar o script agora, verá que a saída é “17”.
Uso de nomes de alias
Se você quiser importar o módulo com um nome mais curto, isso também é possível. Funciona assim:
Agora você pode chamar as funções com o alias ar, tornando seu código um pouco mais curto:
Apesar do nome diferente, tudo funciona como de costume. É apenas uma questão de preferência.

Importação seletiva de funções
Às vezes você não precisa de todas as funções de um módulo. Você pode escolher quais funções deseja importar. Para isso, use a seguinte sintaxe:
Agora a função adicionar está disponível diretamente, sem precisar especificar o nome do módulo.
Portanto, ao chamar adicionar(a, b), a autocompletar lhe oferecerá isso diretamente, sem incluir outras funções.
Resolvendo conflitos de nomes
Uma outra vantagem dos nomes de alias e da importação seletiva é a capacidade de evitar conflitos de nomes. Se você tiver um módulo que possui o mesmo nome que uma biblioteca externa, ainda poderá usar as funções.
Se seu módulo arithmetik.py tiver o mesmo nome que o módulo matemático math.py, você teria um conflito. No entanto, com aliasing ou importação seletiva, você pode contornar isso.

Conclusão sobre Módulos e Importações
Como você viu até agora, os módulos são uma parte central da programação em Python. Eles ajudam a tornar seu código modular e reutilizável. A importação e os diferentes métodos de importação fornecem flexibilidade e controle sobre o acesso às funções em seus scripts.
Resumo - Fundamentos do uso e importação de módulos Python
Neste tutorial, você aprendeu como criar, importar e usar módulos simples em Python. A importância de estruturar seu código é destacada pelos módulos e pelas várias opções de importação. Assim, você pode tornar sua programação muito mais eficaz.
Perguntas frequentes
O que é um módulo em Python?Um módulo é um arquivo Python que define funções, classes e variáveis que podem ser usadas em outros scripts Python.
Como importo um módulo?Você pode importar um arquivo usando o comando import nomemodulo.
Qual é a diferença entre import nomemodulo e from nomemodulo import funcao?O primeiro comando importa todo o módulo, enquanto o segundo comando importa apenas a função específica.
Como posso evitar conflitos de nomes?Você pode usar nomes de alias ou importar funções seletivamente para contornar conflitos com outros módulos.