Principais Bibliotecas do Python — guia completo
Python conquistou seu espaço em praticamente todas as áreas da computação — de jogos indie a pesquisas de ponta em inteligência artificial. O segredo? Um ecossistema de bibliotecas vibrante, mantido por comunidades apaixonadas e grandes empresas. Neste guia reunimos 35 bibliotecas essenciais, com descrições curtas, curiosidades de bastidores, projetos que já as utilizam e um hello‑world mínimo para você experimentar agora mesmo.
🚀 Como usar
- Instale cada lib com
pip install <pacote>
(ou consulte a doc oficial).- Rode o snippet para sentir o sabor.
- Explore além!
Índice
- Pygame
- TensorFlow
- PyTorch
- Tkinter
- OpenCV
- NumPy
- Kivy
- Beautiful Soup
- Mechanical Soup
- Selenium
- Scrapy
- SQLite (sqlite3)
- Pillow
- Matplotlib
- SymPy
- SciPy
- Scikit‑Learn
- PyBrain
- Theano
- Natural Language Toolkit
- Pickle
- Pyglet
- VPython
- Turtle
- RPy2
- spaCy
- Bokeh
- Plotly
- SQLAlchemy
- FastAPI
- Django
- Flask
- PyWin32
- py2exe
- PyQt
Pygame
Descrição: Motor de jogos 2D construído sobre SDL. Ótimo para prototipar games, simulações e ensino de programação.
Curiosidade: Começou em 2000; usado em milhares de game‑jams e cursos mundo afora.
Projetos notáveis:
• Frets On Fire (jogo estilo Guitar Hero)
• Super Potato Bruh (vencedor Ludum Dare)
• IDEs educacionais como CodeSkulptor
import pygame, sys
pygame.init()
screen = pygame.display.set_mode((640, 480))
while True:
for e in pygame.event.get():
if e.type == pygame.QUIT:
pygame.quit(); sys.exit()
screen.fill((0, 0, 0))
pygame.draw.circle(screen, (255, 0, 0), (320, 240), 60)
pygame.display.flip()
TensorFlow
Descrição: Framework de Machine Learning da Google com execução distribuída e aceleração por GPU/TPU. Inclui API de alto nível (Keras).
Curiosidade: Foi anunciado no Google I/O 2015 como sucessor open‑source do DistBelief.
Projetos notáveis:
• Google Photos (reconhecimento de imagem)
• Airbnb, Twitter, Lyft — modelos de previsão e classificação
• CERN — análise de colisões de partículas
import tensorflow as tf
a = tf.constant([[1., 2.], [3., 4.]])
b = tf.constant([[5., 6.], [7., 8.]])
print(tf.matmul(a, b))
PyTorch
Descrição: Framework de Deep Learning focado em dinamismo (define‑by‑run) e usabilidade Pythonic, mantido pela Meta AI.
Curiosidade: Migrado para Linux Foundation sob a PyTorch Foundation em 2022.
Projetos notáveis:
• OpenAI GPT‑2/3 (fase de pesquisa)
• Tesla Autopilot NN
• HuggingFace Transformers
import torch
x = torch.randn(3, 3, requires_grad=True)
y = x ** 2
y.mean().backward()
print(x.grad)
Tkinter
Descrição: Toolkit GUI padrão que acompanha o CPython, baseado no Tcl/Tk.
Curiosidade: O editor IDLE, que vem com Python, é inteiro escrito em Tkinter.
Projetos notáveis:
• Ferramentas internas da NASA
• Softwares de laboratório acadêmico que precisam de GUI rápida
import tkinter as tk
root = tk.Tk()
tk.Label(root, text="Olá, mundo!").pack()
root.mainloop()
OpenCV
Descrição: Biblioteca de visão computacional com mais de 2500 algoritmos clássicos e suporte a CUDA/ONNX.
Curiosidade: Criada pela Intel em 1999; hoje mantida pela OpenCV.org.
Projetos notáveis:
• Sistemas ADAS de montadoras (e.g. Toyota)
• Aplicativos de AR no Snapchat
• Controle de qualidade de fábricas (BMW, Siemens)
import cv2
img = cv2.imread("foto.jpg")
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cv2.imwrite("cinza.jpg", gray)
NumPy
Descrição: Base de arrays N‑dimensionais, álgebra linear e broadcasting — pilar do stack científico Python.
Curiosidade: Nasceu como Numeric (1995), evoluiu para Numarray e fundiu‑se em NumPy 1.0 (2006).
Projetos notáveis:
• NASA e JPL — trajetórias espaciais
• Spotify — análises de recommender
• Quase TODO notebook científico no Kaggle
import numpy as np
a = np.arange(9).reshape(3, 3)
print(np.linalg.inv(a + np.eye(3)))
Kivy
Descrição: Framework multitouch para apps desktop e mobile, usando OpenGL ES 2.
Curiosidade: Suporta Raspberry Pi e foi usado em quiosques de museus interativos.
Projetos notáveis:
• Kivy Launcher (Play Store)
• Interface do robô Project J.A.R.V.I.S na Maker Faire
• Apps educacionais em OLPC
from kivy.app import App
from kivy.uix.label import Label
class Hello(App):
def build(self):
return Label(text="Touch me 👆")
Hello().run()
Beautiful Soup
Descrição: Parser HTML/XML resiliente a tags quebradas; converte o DOM em objetos navegáveis.
Curiosidade: Autor Leonard Richardson escolheu o nome em homenagem ao poema de Alice no País das Maravilhas.
Projetos notáveis:
• Wikicode parser do ArchiveTeam
• Extratores de dados do IMDb e jornais on‑line
from bs4 import BeautifulSoup
html = "<h1>Título</h1>"
print(BeautifulSoup(html, "html.parser").h1.string)
Mechanical Soup
Descrição: Combina requests
+ Beautiful Soup para automatizar formulários sem abrir navegador.
Curiosidade: Ideal para sites simples, economizando um Selenium inteiro.
Projetos notáveis:
• Rastreadores acadêmicos (paginação de periódicos)
• Bots de submissão de formulários governamentais
import mechanicalsoup
browser = mechanicalsoup.StatefulBrowser()
browser.open("https://httpbin.org/forms/post")
browser.select_form('form')
browser["custname"] = "Edu"
print(browser.submit_selected().status_code)
Selenium
Descrição: Automatiza navegadores reais via WebDriver; fundamental para testes E2E.
Curiosidade: Originalmente criado por engenheiros da ThoughtWorks (2004).
Projetos notáveis:
• Testes do YouTube, Netflix, Spotify
• Robot Framework usa SeleniumLibrary por baixo
from selenium import webdriver
with webdriver.Firefox() as d:
d.get("https://example.com")
print(d.title)
Scrapy
Descrição: Framework de scraping assíncrono baseado em Twisted; escala em milhões de páginas/dia.
Curiosidade: Criado dentro da startup brasileira APT (2008).
Projetos notáveis:
• Parse.ly (analytics de mídia)
• Data.gov.uk crawler oficial
• Vários comparadores de preço (Buscapé)
import scrapy
class QuotesSpider(scrapy.Spider):
name = "quotes"
start_urls = ["http://quotes.toscrape.com"]
def parse(self, response):
for q in response.css("span.text::text").getall():
yield {"quote": q}
SQLite
Descrição: Motor SQL zero‑conf embutido; inteiro cabe em <700 KiB.
Curiosidade: Armazena o histórico do Firefox, Telegram e até o firmware de drones DJI.
Projetos notáveis:
• Android usa SQLite para todas as apps
• iOS Core Data default
• Git internamente (config)
import sqlite3, pathlib
db = sqlite3.connect('demo.db')
db.execute('create table if not exists notes(txt)')
db.execute('insert into notes values(?)', ('Olá',))
print(db.execute('select * from notes').fetchall())
db.close()
pathlib.Path('demo.db').unlink()
Pillow
Descrição: Fork moderno da Python Imaging Library (PIL) para edição e processamento de imagens.
Curiosidade: Em 2011 a PIL ficou sem manutenção; a comunidade criou Pillow para mantê‑la viva.
Projetos notáveis:
• Processamento de thumbnails no Instagram early days
• Ferramentas de ETL de imagens na Wikimedia
from PIL import Image, ImageFilter
Image.open('foto.jpg').filter(ImageFilter.BLUR).save('blur.jpg')
Matplotlib
Descrição: Biblioteca de plots 2D/3D inspirada no MATLAB, coração dos notebooks Jupyter.
Curiosidade: História curiosa: John D. Hunter criou para visualização médica em um stent cardíaco.
Projetos notáveis:
• Publicações da Nature/Science
• Visualizações de telemetria SpaceX
• CERN ROOT bindings
import matplotlib.pyplot as plt
plt.plot([0,1,2],[0,1,4]); plt.show()
SymPy
Descrição: Álgebra simbólica escrita 100 % em Python puro, sem dependências C.
Curiosidade: Permite gerar código (C, Fortran, LLVM) diretamente de expressões simbólicas.
Projetos notáveis:
• CAS em aplicativos móveis (e.g. Photomath)
• NASA JPL autoderivação de equações de órbita
import sympy as sp
x = sp.symbols('x')
print(sp.integrate(sp.sin(x)/x, (x, 0, sp.oo)))
SciPy
Descrição: Camada de algoritmos de alto nível para otimização, sinal, imagem e estatística; depende do NumPy.
Curiosidade: A conferência anual SciPy é um dos pilares da comunidade científica Python.
Projetos notáveis:
• Processamento de sinais do LIGO (ondas gravitacionais)
• Análise sísmica da USGS
from scipy import optimize
f = lambda x: x**3 - 2*x - 5
print(optimize.newton(f, 2))
Scikit‑Learn
Descrição: Conjunto de ML tradicional (árvores, SVM, clustering) sobre NumPy/SciPy; API padronizada fit/predict
.
Curiosidade: Nome ‘scikit’ vem de SciPy Toolkit — era apenas um addon experimental.
Projetos notáveis:
• Spotify recomendação
• Birch clustering do CERN
• Pesquisas biomédicas em larga escala
from sklearn.datasets import load_iris
from sklearn.ensemble import RandomForestClassifier
X,y = load_iris(return_X_y=True)
print(RandomForestClassifier().fit(X,y).predict([X[0]]))
PyBrain
Descrição: ‘Python Brain’ — biblioteca de RL e NN antes da febre DL; ótima para didática.
Curiosidade: Parou no tempo (último release 2013), mas ainda aparece em papers clássicos.
Projetos notáveis:
• Pesquisas de robótica na Uni. Bielefeld
• Prototipagem de agentes RL simples
from pybrain.structure import FeedForwardNetwork
net = FeedForwardNetwork(); print(net)
Theano
Descrição: Pioneiro em computation graphs e auto‑grad; influência direta de TensorFlow.
Curiosidade: Descontinuado em 2017, porém renasceu como Theano‑PyMC em 2020.
Projetos notáveis:
• Modelagem bayesiana no PyMC3/PyMC4
• Pesquisa da MILA (Canadá)
import theano.tensor as T
from theano import function
x, y = T.dscalars('x','y')
print(function([x, y], x*y)(3,4))
Natural Language Toolkit
Descrição: Toolkit educacional para NLP: tokenizers, POS taggers, corpora.
Curiosidade: Usado no curso clássico de NLP de Steven Bird em Berkeley.
Projetos notáveis:
• MOOCs de NLP por toda parte
• Prototipagem de chatbots acadêmicos
import nltk, ssl
ssl._create_default_https_context = ssl._create_unverified_context
nltk.download('punkt')
print(nltk.word_tokenize('Olá mundo!'))
Pickle
Descrição: Mecanismo built‑in de serialização binária de objetos Python.
Curiosidade: O formato usa opcodes estilo assembly de pilha.
Projetos notáveis:
• Cache de modelos em scikit‑learn
• Troca de dados no multiprocessing
import pickle, pathlib
pickle.dump({'pi':3.14}, open('d.pkl','wb'))
print(pickle.load(open('d.pkl','rb')))
pathlib.Path('d.pkl').unlink()
Pyglet
Descrição: Biblioteca multimídia leve (OpenGL, áudio, janela); zero dependências externas.
Curiosidade: Utilizada na implementação original do OctoPrint para pré‑visualizar G‑code 3D.
Projetos notáveis:
• Simuladores 3D educacionais
• Ferramentas de visualização molecular
import pyglet
win = pyglet.window.Window()
@win.event
def on_draw():
win.clear()
pyglet.text.Label('Hey!', x=20, y=win.height//2).draw()
pyglet.app.run()
VPython
Descrição: API super simples para construir cenas 3D ‘físicas’ no navegador via WebGL.
Curiosidade: Muito usado em cursos de física introdutória (Motion of Planets).
Projetos notáveis:
• MOOCs da edX/Stanford
• Visualizações em GlowScript
from vpython import sphere, vector
sphere(pos=vector(0,0,0), radius=1)
Turtle
Descrição: Interface ‘Logo’ embutida no Python para ensinar algorítmica.
Curiosidade: Faz parte da biblioteca padrão desde o Python 2.5.
Projetos notáveis:
• Atividades do Hour of Code
• Livro Python for Kids
import turtle
t = turtle.Turtle()
for _ in range(4):
t.forward(100); t.right(90)
turtle.done()
RPy2
Descrição: Ponte bidirecional entre Python e o interpretador R — chamada funções e troca de objetos.
Curiosidade: Permite usar ggplot2 diretamente em notebooks Python.
Projetos notáveis:
• Bioinformática no Bioconductor
• Estatísticas avançadas em econometria
import rpy2.robjects as ro
print(ro.r('mean(rnorm(100))')[0])
spaCy
Descrição: Biblioteca industrial de NLP otimizada em Cython com modelos pré‑treinados rápidos.
Curiosidade: Possui sistema de pipes modular e integra Transformers via spaCy v3.
Projetos notáveis:
• Prodigy annotation tool
• Extração de entidades em fin‑techs
import spacy, warnings
warnings.filterwarnings('ignore', category=UserWarning)
nlp = spacy.load('en_core_web_sm')
doc = nlp('Apple is looking at buying U.K. startup for $1 billion')
print([(ent.text, ent.label_) for ent in doc.ents])
Bokeh
Descrição: Visualização interativa gerando HTML/JS; suporta streaming de dados em tempo real.
Curiosidade: Nome vem do termo japonês de fotografia ‘bokeh’ (desfocado).
Projetos notáveis:
• Painéis do NASA JPL DSN
• Dashboards de trading crypto em tempo real
from bokeh.plotting import figure, show
p = figure(title='Linha simples')
p.line([1,2,3],[1,4,9])
show(p)
Plotly
Descrição: Biblioteca cross‑language para gráficos interativos e dashboards; versão open‑source ‘Plotly Express’.
Curiosidade: Back‑end é WebGL/D3 — pode exportar como imagem vetorial.
Projetos notáveis:
• Dashboards de COVID‑19 Johns Hopkins
• Analytics internos do Uber Movement
import plotly.express as px
fig = px.scatter(x=[1,2,3], y=[1,4,9])
fig.show()
SQLAlchemy
Descrição: Toolkit + ORM que abstrai múltiplos bancos; filosofia ‘SQL of SQLAlchemy’ — você ainda escreve SQL.
Curiosidade: Autor Mike Bayer foi vocal contra ORMs ‘magia negra’ e manteve foco na visibilidade.
Projetos notáveis:
• Reddit migração para Postgres
• Serviços OpenStack
• CERN ATLAS
from sqlalchemy import create_engine, text
engine = create_engine('sqlite:///:memory:')
with engine.connect() as conn:
conn.execute(text('create table users(name)'))
conn.execute(text("insert into users values ('Edu')"))
print(conn.execute(text('select * from users')).all())
FastAPI
Descrição: Framework moderno para APIs REST/GraphQL assíncronas, baseado em Starlette + Pydantic.
Curiosidade: Automaticamente gera docs Swagger e Redoc; criado por Sebastián Ramírez.
Projetos notáveis:
• Backend do DataStax Astra
• Prototipação de serviços da Microsoft Xbox Live
from fastapi import FastAPI
app = FastAPI()
@app.get('/')
def read_root():
return {'msg':'Olá, FastAPI!'}
# uvicorn main:app --reload
Django
Descrição: Framework full‑stack ‘batteries‑included’ que popularizou o ORM + admin auto.
Curiosidade: Criado para o jornal Lawrence Journal‑World em 2005.
Projetos notáveis:
• Instagram (primeiros anos)
• Disqus, Pinterest beta
• GOV.UK serviços públicos
django-admin startproject mysite
python manage.py runserver
Flask
Descrição: Micro‑framework WSGI baseado em Werkzeug & Jinja2; filosofia minimalista ‘bring your own modules’.
Curiosidade: Começou como piada de 1º de Abril chamada Denied até virar projeto sério.
Projetos notáveis:
• API do Pinterest original
• Netflix metadata service
• Microservices da Lyft
from flask import Flask
app = Flask(__name__)
@app.route('/')
def home():
return 'Hello, Flask!'
app.run(debug=True)
PyWin32
Descrição: Extensões para acessar APIs Win32: COM, registry, serviços, MAPI.
Curiosidade: Mark Hammond lançou em 1996; a Microsoft patrocinou a migração para GitHub em 2016.
Projetos notáveis:
• Automação de planilhas Office
• Scripts de build do Unreal Engine
import win32com.client
shell = win32com.client.Dispatch('WScript.Shell')
shell.Popup('Olá do Windows!', 0, 'PyWin32', 0)
py2exe
Descrição: Empacotador que converte scripts Python em executáveis .exe para Windows.
Curiosidade: Popular nos anos 2000 para distribuir ferramentas shareware.
Projetos notáveis:
• Utilitários desktop independentes
• Jogos indie standalone
# setup.py
from distutils.core import setup
import py2exe
setup(console=['main.py'])
PyQt
Descrição: Bindings da Qt (C++) para Python; produz GUIs cross‑platform profissionais.
Curiosidade: Licenciamento dual GPL/comercial; alternativa LGPL é PySide.
Projetos notáveis:
• Anki (flashcards)
• Calibre e‑book manager
• Dropbox desktop client (early)
from PyQt5.QtWidgets import QApplication, QLabel
app = QApplication([])
label = QLabel('PyQt 💚 dionisio.dev'); label.show(); app.exec_()
Fique de olho para mais postagens informativas sobre o mundo do desenvolvimento de software. E se você gostou desse artigo, continue explorando o site, pois sempre tem muita coisa interessante para quem gosta e quer se aprofundar em tecnologia.