Python – Módulos
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ção | Significado |
| 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ção | Significado |
| 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ção | Significado |
| 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ção | Significado |
| 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