O ecossistema Python está em constante evolução, e novas bibliotecas vêm transformando a forma como dados, inteligência artificial e aplicações são desenvolvidos. Em 2025, algumas ferramentas se destacam por sua velocidade, simplicidade e integração com tecnologias modernas.
Estas bibliotecas cobrem áreas que vão desde o processamento de dados e criação de interfaces gráficas até o desenvolvimento web e validação de dados. A seguir, são apresentadas quinze bibliotecas modernas que representam avanços notáveis no uso do Python contemporâneo.
Polars — Manipulação ultrarrápida de dados
Polars é uma biblioteca para manipulação de dados estruturados, semelhante ao Pandas, mas escrita em Rust, uma linguagem de alto desempenho. Ela utiliza execução preguiçosa, o que permite lidar eficientemente com grandes volumes de dados. Por ser compatível com o formato Apache Arrow, também otimiza operações em memória e integra-se bem com outros sistemas de dados.
O exemplo abaixo mostra a criação de um DataFrame simples com Polars:
import polars as pl
import datetime as dt
df = pl.DataFrame({
"nome": ["Alice", "Bruno", "Carla", "Daniel"],
"nascimento": [
dt.date(1997, 1, 10),
dt.date(1985, 2, 15),
dt.date(1983, 3, 22),
dt.date(1981, 4, 30),
],
"peso": [57.9, 72.5, 53.6, 83.1],
"altura": [1.56, 1.77, 1.65, 1.75],
})
print(df)
Ruff — Formatação e validação de código ultrarrápidas
Desenvolvido em Rust, Ruff combina funções de diversas ferramentas como Flake8, Black e isort em um único utilitário. Atua tanto como formatador quanto como verificador de erros, destacando-se pela velocidade e automação de correções. Essa abordagem torna o código mais limpo e padronizado.
O trecho seguinte demonstra sua aplicação para detectar e corrigir avisos de código não utilizado:
from typing import Iterable
import os
def soma_pares(numeros: Iterable[int]) -> int:
return sum(num for num in numeros if num % 2 == 0)
# Ruff identificará que 'os' não é usado e sugerirá a remoção automática
PyScript — Execução de Python no navegador
PyScript permite escrever e executar código Python diretamente em navegadores web, sem necessidade de backend. Ele utiliza marcações HTML para integrar o código de forma natural em páginas da web. Assim, torna-se possível criar aplicações interativas usando apenas Python.
Um exemplo básico mostra a exibição da versão do Python no navegador:
<py-script>
import sys
from pyscript import display
display(sys.version)
</py-script>
Pandera — Validação de dados em DataFrames
Pandera fornece uma forma de verificar a integridade de dados em estruturas do Pandas, usando esquemas declarativos. Essa verificação previne erros antes do processamento, assegurando que os tipos e restrições estejam corretos. A biblioteca é especialmente útil em fluxos de ciência de dados e testes automatizados.
O exemplo abaixo define um esquema para validar um conjunto de dados simples:
import pandas as pd
import pandera as pa
df = pd.DataFrame({
"coluna1": [1, 4, 0, 10],
"coluna2": [-1.3, -1.4, -2.9, -10.1],
})
schema = pa.DataFrameSchema({
"coluna1": pa.Column(int, checks=pa.Check.le(10)),
"coluna2": pa.Column(float, checks=pa.Check.lt(-1.2)),
})
schema(df)
Textual — Interfaces de terminal modernas
Textual transforma o terminal em um ambiente interativo e estilizado, permitindo construir interfaces de usuário sem recorrer à web. A biblioteca usa o pacote Rich para formatação de texto, cores e widgets, oferecendo uma experiência visualmente agradável dentro da linha de comando.
Segue um exemplo de aplicação interativa com botões:
from textual.app import App, ComposeResult
from textual.widgets import Label, Button
class PerguntaApp(App[str]):
def compose(self) -> ComposeResult:
yield Label("Gostou do Textual?")
yield Button("Sim", id="sim")
yield Button("Não", id="nao")
def on_button_pressed(self, event: Button.Pressed) -> None:
self.exit(event.button.id)
PerguntaApp().run()
LlamaIndex — Indexação para aplicações com IA
LlamaIndex foi desenvolvida para auxiliar aplicações baseadas em modelos de linguagem extensos, simplificando a indexação e a busca em conjuntos de dados. Suporta RAG (*Retrieval-Augmented Generation*), permitindo que modelos como GPT obtenham informações de fontes externas. Essa capacidade amplia a precisão e contextualização das respostas.
O exemplo a seguir mostra um agente simples que executa uma multiplicação com auxílio de um modelo:
from llama_index.core.agent.workflow import AgentWorkflow
from llama_index.llms.openai import OpenAI
def multiplicar(a, b):
return a * b
agente = AgentWorkflow.from_tools_or_functions(
[multiplicar],
llm=OpenAI(model="gpt-4o-mini"),
)
Robyn — Framework web escalável e veloz
Robyn é um framework de alto desempenho, projetado para aproveitar múltiplos núcleos de CPU e oferecer respostas mais rápidas do que soluções tradicionais como Flask ou FastAPI. Ele é totalmente assíncrono e construído com partes em Rust, potencializando a execução de aplicações web de grande escala.
Um pequeno servidor pode ser criado da seguinte forma:
from robyn import Robyn, Request
app = Robyn(__name__)
@app.get("/")
async def ola(request: Request):
return "Olá, mundo!"
app.start(port=8080)
DuckDB — Banco de dados analítico em memória
DuckDB é um mecanismo SQL embutido e rápido, ideal para tarefas analíticas. Ele roda diretamente na memória do processo Python e pode ser conectado a DataFrames do Pandas ou Polars. Isso permite consultas de alto desempenho sem precisar de um servidor de banco de dados tradicional.
Um exemplo simples demonstra a execução de consultas sobre um DataFrame:
import duckdb
import pandas as pd
df = pd.DataFrame({"x": [42]})
resultado = duckdb.sql("SELECT * FROM df").fetchdf()
print(resultado)
Django — Framework completo para aplicações web
Django é um framework robusto e maduro que fornece recursos de autenticação, painel administrativo e mapeamento objeto-relacional integrados. Seu foco em segurança e escalabilidade faz dele uma escolha sólida para projetos empresariais. Ele mantém uma arquitetura organizada por meio do padrão MTV (Model-Template-View).
Um novo projeto pode ser iniciado rapidamente usando o comando incorporado do Django:
django-admin startproject meu_projeto
cd meu_projeto
python manage.py runserver
FastAPI — Criação de APIs rápidas e assíncronas
FastAPI oferece uma maneira moderna e eficiente de desenvolver APIs RESTful em Python. Ele utiliza tipagem para validação automática de dados e gera documentação interativa. Sua execução assíncrona o torna adequado para sistemas que exigem alto desempenho.
O código a seguir demonstra uma API básica:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def raiz():
return {"mensagem": "Olá, FastAPI!"}
LangChain — Integração com modelos de linguagem
LangChain simplifica a criação de fluxos e aplicações baseadas em modelos de linguagem como o GPT. Ele permite encadear múltiplas chamadas a modelos e integrar recursos de memória e busca. Essa estrutura facilita o desenvolvimento de agentes e assistentes virtuais personalizados.
Um exemplo demonstra a inicialização de um modelo conversacional:
from langchain.chat_models import init_chat_model
modelo = init_chat_model("gpt-4o-mini", model_provider="openai")
resposta = modelo.invoke("Olá, mundo!")
print(resposta)
Pydantic — Validação de dados com anotações de tipo
Pydantic utiliza as anotações de tipo do Python para criar modelos de dados robustos e validados automaticamente. É amplamente adotado em frameworks como FastAPI, reduzindo o risco de erros de tipo e formato. Essa validação automática garante consistência e confiabilidade nos dados manipulados.
O trecho a seguir mostra sua utilização em um modelo de usuário:
from pydantic import BaseModel
class Usuario(BaseModel):
nome: str
idade: int
pessoa = Usuario(nome="Ana", idade=25)
print(pessoa)
Flet — Interfaces gráficas multiplataforma
Flet permite criar interfaces gráficas de usuário usando apenas Python, sem necessidade de HTML, CSS ou JavaScript. Ele produz aplicações para navegador, desktop e dispositivos móveis com o mesmo código. O sistema é reativo, atualizando a interface automaticamente quando os dados mudam.
Um exemplo prático mostra um simples contador interativo:
import flet
from flet import IconButton, Page, Row, TextField, icons
def principal(pagina: Page):
numero = TextField(value="0", width=80)
def soma(e):
numero.value = str(int(numero.value) + 1)
pagina.update()
def subtrai(e):
numero.value = str(int(numero.value) - 1)
pagina.update()
pagina.add(Row([
IconButton(icons.REMOVE, on_click=subtrai),
numero,
IconButton(icons.ADD, on_click=soma)
]))
flet.app(target=principal)
Weaviate — Banco de dados vetorial para IA
Weaviate é um banco de dados especializado em armazenar vetores, utilizados em aplicações de busca semântica e inteligência artificial. Ele combina armazenamento estruturado com embeddings, possibilitando consultas mais próximas do significado dos dados em vez de simples igualdade textual.
Um exemplo cria uma conexão local e verifica sua disponibilidade:
import weaviate
cliente = weaviate.connect_to_local()
print(cliente.is_ready())
Reflex — Framework Python para web completo
Reflex une frontend e backend em um único ambiente Python. Inspirado em frameworks reativos, ele permite construir interfaces semelhantes ao React sem sair do ecossistema da linguagem. Com gerenciamento de estado integrado, facilita o desenvolvimento de aplicações dinâmicas e complexas.
O exemplo a seguir define um aplicativo simples com interação de estado:
import reflex as rx
class Estado(rx.State):
contador = 0
def incrementar(self):
self.contador += 1
def interface():
return rx.vstack(
rx.text(f"Contagem: {Estado.contador}"),
rx.button("Aumentar", on_click=Estado.incrementar)
)
app = rx.App()
app.add_page(interface)
Essas 15 bibliotecas representam um panorama moderno do desenvolvimento em Python em 2025. Elas evidenciam um movimento em direção à performance, integração com IA e acessibilidade de interfaces, consolidando o Python como uma das linguagens mais versáteis da atualidade.