Code

tiforadacaixa

Trabalhando com módulos e pacotes no Python3

Módulos e Pacotes no python são estruturas que facilitam a reutilização e organização do código de nossos programas.

A diferença entre módulos e pacotes é que módulos são arquivos com código python
 pacotes são pastas que guardam vários módulos  

Sobre módulos:


módulos são arquivos com extensão .py que guardam o código que queremos reutilizar, e para fazer isso nos importamos esse modulo no arquivos que queremos reutiliza-lo.

Códigos implementados dentro de módulos, recebem um namespace formado pelo nome do modulo + a união + o nome da estrutura de código

Por Exemplo - modulo a ser importado:

nome do arquivo: calculadora.py
def soma(n1,n2):
    return n1+n2

def subtrai(n1,n2):
    return n1-n2

Modulo onde importamos:

nome do arquivo: calculadora.py
import calculadora

resultado = calculadora.soma(1, 2)

caso a o arquivo calculadora.py estivesse dentro de uma pasta poderiamos importalo da seguinte maneira:

import pasta.calculadora.py

e se ela estivesse dentro de uma pasta que esteja dentro de outra pasta 
import pasta.outrapasta.calculadora.py

o funcionamento é o mesmo


Sobre Pacotes:

Pacotes são pastas onde guardamos vários módulos com código python, um pacote deve ter um arquivo __init__.py
este arquivo __init__.py deve importar para ele os modulos que a pasta contem, essa importação deve ser na forma:

nome do arquivo: __init__.py


nome do pacote: calculadora
from . import *

este ponto apos a palavra from significa que queremos importar tudo do diretorio atual para este arquivo.


E para usarmos este pacote basta fazermos o seguinte

nome do arquivo: escritorio.py

from calculadora import *
#ou
from calcualdora import algumModulo
ao fazer isso, todos os modulos disponiveis no pacote calculadora ficam agora disponiveis no pacote escritorio.



a função import adiciona o simbolo do modulo importado a tabela de simbolos local


ex codigo de modulo ferramentas:

a = 10
b = 20

def soma():
    return a+b



import ferramentas:
    os simbolos do modulo ferramentas ficam disponiveis atraves da forma

    ferramentas.simbolo
    ou ferramentas.simbolo()
ex:
    num = ferramentas.a
    e
    num2 = ferramentas.soma()

from ferramentas import *
    todos os simbolos ficam assessiveis diretamente
    ex:
    num = a
    e
    num2 = soma()



from ferramentas import a as numero

importa o valor do simbolo a para um simbolo com nome numero

Postar um comentário

0 Comentários