import - Como criar, importar e usar um Módulo em Python

Neste tutorial, vamos aprender a criar, importar e usar um módulo, através da keyword import.

Tutorial anterior: O que são Módulos em Python
Obter certificado do Curso de Python

Como Criar um Módulo

Vamos criar um módulo chamado calculadora.py, ou seja, um arquivo com esse nome e extensão.

Nele, vamos definir 4 funções:
  1. soma(x,y)
  2. subtracao(x,y)
  3. multiplicacao(x,y)
  4. divisao(x,y)

Código que já fizemos várias e várias vezes durante nosso Curso de Python na web.
Uma dica muitíssimo importante, para quando formos criar módulos, é comentar seu código.

Antes de toda função de um módulo, adicione um comentário sobre a função, dizendo o que ela faz, os parâmetros e seu retorno.

Isso ajuda outros programadores que forem usar seus módulos e você também. Nosso módulo calculadora.py ficará assim:


calculadora.py
# Esse módulo realiza as 4 operações matemáticas

# Recebe dois números e retorna a soma
def soma(x,y):
    return x+y

# Recebe dois números e retorna a diferença
def subtracao(x,y):
    return x-y

# Recebe dois números e retorna o produto
def multiplicacao(x,y):
    return x*y

# Recebe dois números e retorna a divisão do primeiro pelo segundo
def divisao(x,y):
    return x/y


Como Importar um Módulo: import

Colocou o código anterior em um arquivo chamado calculadora.py?
Agora salve esse arquivo, é seu módulo, seu código organizado, com funções prontas para serem usadas.


Agora abra um novo arquivo Python.
Para poder usar o módulo que criou, você vai usar a keyword import junto do nome do seu módulo (sem a extensão .py), bem no começo do código:

import calculadora

Seu arquivo calculadora.py deve estar na mesma pasta deste script que está programando, ok? E prontinho, para importar um módulo é só isso.

Ao fazer isso, é como se você estivesse 'jogando' todo o código de calculadora.py dentro desse seu novo script. Tudo que tá dentro do módulo, você vai poder usar como se estivesse direto no seu script.

Como Usar um Módulo

Agora que já criamos e importamos o módulo, precisamos aprender como usar as funções contidas naquele arquivo.

Quando queremos chamar uma função bar(), apenas digitamos:
bar() e pronto, ela roda, pois está naquele arquivo que você está escrevendo.



Mas se a função estiver em outro arquivo, ou seja, em um módulo, de nome fu.py você deve digitar:
fu.bar()

Ou seja, primeiro o nome do módulo, um ponto e o nome da função, ok?
Vamos agora criar um programa que importa esse módulo e usa suas funções.

import calculadora

while True:
    print("1. Soma")
    print("2. Subtração")
    print("3. Multiplicação")
    print("4. Divisão")
    op=int(input("Que operação deseja realizar: "))
    x=float(input("Primeiro numero: "))
    y=float(input("Segundo  numero: "))

    if op==1:
        print("Soma:", calculadora.soma(x,y))
    elif op==2:
        print("Subtração:", calculadora.subtracao(x,y))
    elif op==3:
        print("Multiplicação:", calculadora.multiplicacao(x,y))
    elif op==4:
        print("Divisão:", calculadora.divisao(x,y))
    else:
        print("Opção inválida,tente novamente")

Simples, não?

Nunca mais precisaremos escrever essas funções novamente, sempre que precisarmos usar elas, bastar dar um import nesse módulo e usar diretamente suas funções.

Quando um programador ou empresa vai iniciar seus projetos, eles nunca partem do zero. Quando vamos iniciar um novo programa, é certeza já termos algum código pronto, que pode ser reutilizado.

Por isso é importante salvar seus códigos, seus módulos, comentar, deixá-los bem organizados e fáceis de se ler e entender, pois não tenha dúvidas que vai usá-los novamente no futuro.

Importar Função de um Módulo: from modulo import function

Quando fizemos:
import calculadora

Importamos tudo, todo o código, todas as funções do módulo calculadora.py
Porém, alguns módulos que usaremos são simplesmente gigantes, com milhares e milhares de linhas.

Muitas vezes queremos utilizar apenas uma ou outra função desse módulo, e acabamos dando um import e importamos milhares de linhas de código para no script, sem necessidade alguma.

Isso deixa nosso programa mais lento e pesado.
Por isso, é melhor importarmos somente algumas funções específicas.

Para importarmos uma função function() de um módulo de nome modulo, basta fazermos
  • from modulo import function

Prontinho.
Agora é só usar function() direto (nem precisa fazer modulo.function() ).

Nenhum comentário:

Postar um comentário