IST - Física HowTo - Informática 13:11
2026-02-05
  Programação
 
     Python
 
        Módulos
 
           Criar um módulo
 
           Módulos "sme"
 

Python – Módulos

Sumário
1. Introdução
2. Importlib: Biblioteca que permite a importação de módulos
3. ImUtils: Biblioteca de funções para tratamento de imagens
4. IPython: kit de ferramentas para o Python
5. Glog: Biblioteca que disponibiliza funções para encontrar ficheiros por padrões
6. Graphviz: Biblioteca de desenho gráfico
7. Gudhi: Biblioteca para topologia computacional e análise topológica de dados
8. Keras: Biblioteca de aprendizagem profunda
9. Math: Funções e constantes matemáticas comuns
10. Matplotlib: Biblioteca gráfica análoga à do matlab
11. NumPy: Matrizes, álgebra linear, transformada de Fourier
12. OpenCV-Python: Biblioteca para tratar imagens
13. Os: Permite aceder a comandos de sistema operativo
14. Pandas: Análise de estruturas de dados
15. Pathlib: Representação de caminho no sistema de ficheiros
16. Pydot: interface gráfica para o "Graphviz"
17. Python-ImageSearch: Permite pesquisas de imagem
18. PyYAML: formato de serialização de dados
19. Random: funções aleatórias do Python
20. Readline: funções sobre o histórico do interpretador Python
21. Seaborn: Biblioteca de visualização de dados
22. Shutil: Biblioteca de alto nível para ficheiros e coleções de ficheiros
23. SciKit-learn: Biblioteca de funções científicas.
24. Sys: Parâmetros e funções específicos do sistema
25. Tempfile: Biblioteca de manipulação de pastas e ficheiros temporários
26. TensorFlow: Biblioteca de "machine learning"
27. Torch: Biblioteca de "machine learning"
Início

1. Introdução

Seguem-se alguns módulos de Python.
Para importar um módulo faz-se:
import __modulo__
import __modulo__ as __nome__
from __modulo__ import __subModulo__
Caso um módulo tenha sido alterado, é necessário re-importá-lo, caso não tenha sido importado, é ainda necessário instalar o módulo "importlib":
import importlib
importlib.reload (nameOfModule)
As instalações indicadas são para um ambiente virtual e utilizam o instalador "pip".
Início

2. Importlib: Biblioteca que permite a importação de módulos

Permite e facilita a importação de módulos. Está incluído no pacote inicial do Python.
  • Importação:
    import importlib
  • Bibliografia:
Início

3. ImUtils: Biblioteca de funções para tratamento de imagens

  • "ImUtils" é uma biblioteca de funções para tratamento de imagens.
  • Instalação: No caso de o 'python' dizer que ele não existe, fazer:
    pip install imutils
  • Importação:
    import imutils
  • Bibliografia:
Início

4. IPython: kit de ferramentas para o Python

  • "IPython" é um kit de ferramentas para o Python.
  • Instalação: No caso de o 'python' dizer que ele não existe, fazer:
    pip install ipython
  • Importação:
    import IPython
  • IPython.display: É uma interface com ferramentas de visualização em IPython.
    • Importação: Se se quiser usar simplesmente como "display" pode fazer-se:
      from IPython import display
  • Bibliografia:
Início

5. Glog: Biblioteca que disponibiliza funções para encontrar ficheiros por padrões

  • "glob" permite encontrar ficheiros e pastas a partir de padrões
  • Instalação: No caso de o 'python' dizer que ele não existe, fazer:
    pip install glob2
  • Importação:
    import glob
  • Bibliografia:
Início

6. Graphviz: Biblioteca de desenho gráfico

  • "Graphviz" é uma biblioteca de desenho gráfico. Usa a linguagem DOT.
  • Instalação: No caso de o 'python' dizer que ele não existe, fazer:
    pip install graphviz
  • Importação:
    import graphviz
  • Bibliografia:
Início

7. Gudhi: Biblioteca para topologia computacional e análise topológica de dados

  • "Gudhi" é uma biblioteca para topologia computacional e para anásile topológica de dados.
  • Ver: HowTo – Gudhi.
Início

8. Keras: Biblioteca de aprendizagem profunda

  • "Keras" é uma biblioteca de aprendizagem profunda.
  • Ver: HowTo – Keras.
Início

9. Math: Funções e constantes matemáticas comuns

  • "math" é uma biblioteca de funções e constantes matemáticas comuns que estão contidas na norma de "C".
  • Ver: HowTo – Math.
Início

10. Matplotlib: Biblioteca gráfica análoga à do matlab

  • "Matplotlib" é uma biblioteca gráfica que funciona de um modo análogo ao "Matlab".
  • Instalação: No caso de o 'python' dizer que ele não existe, fazer:
    pip install matplotlib
  • Importação:
    import matplotlib.pyplot as plt
  • Bibliografia:
Início

11. NumPy: Matrizes, álgebra linear, transformada de Fourier

  • "NumPy" (Numerical Python) é uma biblioteca que dispõe de ferramentas em álgebra linear, transformada de Fourier e matrizes.
    Foi criada por Travis Oliphant.
  • Instalação: No caso de o 'python' dizer que ele não existe, fazer:
    pip install numpy
  • Importação:
    import numpy as np
  • Bibliografia:
Início

12. OpenCV-Python: Biblioteca para tratar imagens

  • "OpenCV-Python"é uma biblioteca para tratar imagens em Python.
  • Instalação: No caso de o 'python' dizer que ele não existe, fazer:
    pip install opencv-python
  • Importação:
    import cv2
  • Alguns métodos úteis
    OperaçãoSignificado
    img = cv2.imread ("path") Lê uma imagem a partir de um ficheiro.
    cv2.imshow (img) Mostra uma imagem obtida a partir de cv2.imread.
    cv2.waitKey (val) Mostra uma imagem durante um certo tempo em milisegundos.
    cv2.destroyAllWindows () Fecha todas as janelas

  • Bibliografia:
Início

13. Os: Permite aceder a comandos de sistema operativo

  • "Os"é uma biblioteca que permite aceder a comandos e operações do sistema operativo.
  • Importação:
    import os
  • Alguns métodos úteis
    OperaçãoSignificado
    os.chdir ('__dir__') Altera a pasta de default para "__dir__"
    os.login () Retorna o nome do utilizador
    os.strerror (__num__) Retorna o texto do erro "__num__"
    os.system ('__Comm__') Executa, no interpretador de python o comando da shell "__Comm__"

  • Bibliografia:
Início

14. Pandas: Análise de estruturas de dados

  • "Pandas" é uma biblioteca que dispõe de ferramentas para análise de estruturas de dados. O "Pandas" usa a biblioteca "NumPy".
  • Instalação: No caso de o 'python' dizer que ele não existe, fazer:
    pip install pandas
  • Importação:
    import pandas as pd
  • Bibliografia:
Início

15. Pathlib: Representação de caminho no sistema de ficheiros

Permite a representam caminhos em sistemas de ficheiros para diferentes sistemas operativos. As classes de caminhos são divididas em caminhos puros, para operações puramente computacionais operações sem IO e os caminhos concretos que podem ser usados em operações de IO.
  • Instalação:
    pip install pathlib
  • Importação:
    import pathlib
    from pathlib import Path
  • Exemplos:
    OperaçãoSignificado
    p.path('..') Define o caminho p para a pasta anterior
    [x for x in p.iterdir() if x.is_dir()] Mostra as pastas contidas em p
    list(p.glob('**/*.py')) Lista os ficheiros contidos em p
    p.exists() Testa se p existe
    p.is_dir() Testa se p é uma pasta
    q = Path(fileName)
    with q.open() as f:
    f.readline()
    f.readline()
    Lê as primeiras duas linhas do ficheiro "fileName"
    ln -s file fileLink
    p = Path(fileLink)
    p.resolve()
    Retorna o ficheiro para o qual o "link" p aponta.
    p = Path('/etc/printcap')
    p.resolve()
    Dado um link p, retorna o ficheiro para o qual ele aponta.
  • Bibliografia:
Início

16. Pydot: interface gráfica para o "Graphviz"

  • "Pydot" é uma interface gráfica para o "Graphviz" que permite criar, ler, editar e visualizar gráficos.
  • Instalação: No caso de o 'python' dizer que ele não existe, fazer:
    pip install pydot
  • Importação:
    import pydot
  • Bibliografia:
Início

17. Python-ImageSearch: Permite pesquisas de imagem

  • "Python-ImageSearch" é um módulo que disponibiliza recursos para pesquisas de imagem em multi-plataforma
  • Instalação: No caso de o 'python' dizer que ele não existe, fazer:
    pip install python3-xlib
    Para instalação de pacote em Ubuntu fazer:
    sudo apt-get install scrot python3-tk python3-dev python3-opencv
  • Importação:
    import pyimagesearch
  • Bibliografia:
Início

18. PyYAML: formato de serialização de dados

  • "PyYAML" é um formato de serialização de dados. Está de maneira que permite uma fácil leitura aos humanos.
  • Importação:
    pip install pyyaml
    Para instalar o formato "HDF5" fazer:
    pip install pyyaml h5py
  • Bibliografia:
Início

19. Random: funções aleatórias do Python

  • "Random" é uma biblioteca que implementada diversas funções para gerar números aleatórios.
  • Importação:
    import random
  • Fixação da 'seed':
    random.seed (a=None, version=2)
    quando "a" é "None" é utilizada a hora do sistema.
  • Alguns métodos deste módulo:
    • random.getstate ()
      Retorna um objecto com estado interno actual do gerador aleatório. Ele pode, posteriormente, ser usado por "random.setstate" para continuar o processo a partir daquele ponto.
    • random.choice (seq)
      Escolhe aleatoriamente um valor da sequência 'seq'.
    • random.random ()
      Gera um número aleatório, em floating point, no intervalo [0, 1[.
    • random.randrange (stop) ou (start, stop[, step])
      Gera um número inteiro até 'stop' no primeiro caso ou entre 'start' e 'stop' no segundo, neste caso pode ainda restringir o espaçamento por meio de 'step' (default '1'). Em todos os casos o valor de 'stop' não é incluído.
    • random.setstate (state)
      Continua o gerador aleatório no ponto definido por "state", que é o retorno do método "random.getstate".
    • random.shuffle (x)
      Serve para baralhar aleatoriamente a sequência dos elementos de "x".
  • Bibliografia:
Início

20. Readline: funções sobre o histórico do interpretador Python

  • "Readline" é uma biblioteca de funções de leitura e escrita de ficheiros do histórico do interpretador Python.
  • Importação:
    import readline
  • Bibliografia:
Início

21. Seaborn: Biblioteca de visualização de dados

  • "Seaborn" é uma biblioteca de visualização de dados, construída sobre o "Matplotlib" e funciona o "Pandas". Dispõe de ferramentas poderosas para visualização de dados e análises estatísticas.
  • Instalação: No caso de o 'python' dizer que ele não existe, fazer:
    pip install seaborn
  • Importação:
    import seaborn as sns
  • Bibliografia:
Início

22. Shutil: Biblioteca de alto nível para ficheiros e coleções de ficheiros

  • "shutil" é uma biblioteca de alto nível para ficheiros e coleções de ficheiros.
    Nota: É necessário ter em atenção que não são copiados todos os metadados dos ficheiros.
  • Instalação:
    pip install shutils
  • Importação:
    import shutil
  • Alguns métodos úteis
    OperaçãoSignificado
    shutil.get_archive_formats() Retorna uma lista com os formatos suportados para guardar ficheiros (tar, zip, ...)
    shutil.make_archive (base_name, format) Cria um ficheiro para guardar ficheiros com o nome "base_name" e com o formato "format"
    shutil.unpack_archive (base_name) Descomprime o ficheiro "base_name"
    shutil.rmtree('/path/d1', ignore_errors=True) Remove a pasta "/path/d1" recursivamente. Equivalente a "rm -fr /path/d1"

  • Bibliografia:
Início

23. SciKit-learn: Biblioteca de funções científicas.

  • "scikit-learn" é uma biblioteca de funções científicas.
  • Instalação:
    pip install scikit-learn
  • Importação:
    import import sklearn
  • Bibliografia:
Início

24. Sys: Parâmetros e funções específicos do sistema

Podemos encontrar aqui parâmetros e funções específicos do sistema (ver: módulo "sys")
  • Importação:
    import sys
  • Argumentos da linha de comandos
    • sys.argv: Vector com os argumentos da linha de comandos, o primeiro elemento é o nome do progrma;
    • sys.orig_argv: Idêntico ao anterior mas o primeiro elemento é o próprio interpretador e o segundo o nome do programa;

  • Canais pré-definidos para o terminal
    • sys.stdin: Entrada a partir do teclado. A informação a ele associada por ser encontrada em "sys.__stdin__".
    • sys.stdout: Escrita no ecran; A informação a ele associada por ser encontrada em "sys.__stdout__".
    • sys.stderr: Escrita de erros, em geral, também para o ecran; A informação a ele associada por ser encontrada em "sys.__stderr__".

  • Módulos: informações específicas
    • sys.stdlib_module_names: Vector com os nomes dos módulos da biblioteca standard;

  • Sistema: informações específicas
    • sys.executable: Caminho absoluto do interpretador de Python.
    • sys.exit([arg]): Termina a execução do Python. "arg" deve ser um inteiro entre 0 e 127. Por defeito é 0.
    • sys.float_info: Tuple com a informação sobre a representação de floats
    • sys.int_info: Tuple com a informação sobre a representação de números inteiros
    • sys.path: Mostra a lista das pastas em que são procurados os módulos.
      Para acrescentar caminhos pode usar-se a variável de ambiente "PYTHONPATH". Para o fazer permanentemente adicionar a linha seguinte ao ficheiro "~/.bashrc"
      export PYTHONPATH='/caminho_para_a_pasta_desejada'
    • sys.platform: Indica o sistema operativo (Exemplos: 'android', 'linux', 'win32', ...)
    • sys.prefixo: string com o prefixo do diretório em que a plataforma está instalada
    • sys.ps1 e sys.ps2: respectivamente, prompt principal do interpretador e prompt de linha de continuação.
    • sys.version: Versão do Python utilizada.
    • sys._xoption: dicionário com os vários argumentos especificados por -X na linha de comandos.
  • Bibliografia:
Início

25. Tempfile: Biblioteca de manipulação de pastas e ficheiros temporários

  • "Tempfile" é uma biblioteca de manipulação de pastas e ficheiros temporários.
  • Instalação:
    pip install temp
  • Importação:
    import tempfile
  • Métodos
    • tempfile.NomeTemporaryFile(...): Idêntica a tempfile.TemporaryFile mas cria um ficheiro visível no sistema de ficheiros. Permite não ser apagado quando se fecha.
    • tempfile.TemporaryFile(...): Cria um ficheiro temporário;
    • tempfile.mkstemp(...): Cria um ficheiro temporário da forma mais segura possível (de acordo com o sistema operativo).
    • tempfile.mkdtemp(...): Cria uma pasta temporária da forma mais segura possível (de acordo com o sistema operativo).
    • tempfile.gettempdir(): Retorna o nome da pasta utilizada para os ficheiros temporários.

  • Bibliografia:
Início

26. TensorFlow: Biblioteca de "machine learning"

  • "TensorFlow" é uma biblioteca de 'machine learning' que permite criar e treinar redes neurais.
    Foi inicialmente desenvolvido pela equipa 'Google Brain'.
  • Ver: HowTo – TensorFlow.
Início

27. Torch: Biblioteca de "machine learning"

  • "Torch" é uma biblioteca de aprendizagem profunda.
  • Ver: HowTo – Torch.
Início