A Biblioteca de Alexandria


Alexandria, no Egito, foi considerada a capital do conhecimento no mundo há cerca de 2500 anos ao sediar a maior biblioteca já vista na história da humanidade até então. Fast forward no tempo, a internet descentralizou e distribui o conhecimento, no entanto, sem diminuir a relevância das bibliotecas para o acesso à informação. Na era digital, frequentemente comentamos sobre a importância das open source libs de Python para o avanço da popularidade dessa linguagem. Estaria a comunidade de Python buscando criar a “nova biblioteca de Alexandria” em programação?

Neste post iremos explorar quais são as bibliotecas mais canônicas da linguagem, para diferentes usos e aplicações. Além das libs que utilizamos em nossos cursos que iremos discutir aqui, encontramos uma lista bem completa nessa página do Github. Eles listam ótimas opções de bibliotecas e frameworks para documentação, e-commerce, criptografia, geolocalização, machine learning e muitas outras aplicações.

Scikit-learn para machine learning: com mais de 20 mil commits e cerca de 1000 contribuidores, essa é provavelmente a mais utilizada para os principais algoritmos de aprendizado de máquina.

Requests para web: HTTP for Humans, esse é o slogan da biblioteca mais famosa para enviar requests em páginas da internet de maneira automática. Ela possui vasta aplicação para qualquer tipo de algoritmo.

Matplotlib para visualização de dados: essa é a Python lib com o maior número de commits em 2018, de acordo com o Github. Ótima para criação de gráficos, mapas de calor e histogramas. Utilizamos em nosso curso de Data Science e Python for Finance, para aqueles que buscam substituir seu excel.

Pandas para análise de dados: essa é uma biblioteca bem completa para análise de dados e utilizada pela maioria dos cursos na área. Considerada o “Excel do Python”, é possível ler dados em diversos formatos (.csv, .xlsx., .html, sql), visualizá-los, extrair informações e manipulá-los. Ela permite realizar cálculos relativamente complexos de maneira rápida e intuitiva. Ela é uma biblioteca essencial em nosso curso de Data Science e Python for Finance. Existem funções e métodos específicos para o mercado financeiro.

BeautifulSoup para busca dados na web: permite você buscar informações em páginas de HTML e arquivos XML de maneira automática, de forma direta ou hierárquica. Com isso, permite a criação dos “rastreadores de web”. Outra biblioteca muito utilizada é o Scrapy.

PyGame para desenvolvimento de games: módulo de Python que utiliza outra plataforma chamada SDL (Simple DirectMedia Layer) para gráficos, teclado e audio. Facilita a utilização de sprites (personagens), detecção de colisão e outras funcionalidades comuns em jogos.

Pillow para processamento de imagens: utilizamos em nossos cursos, essa é uma biblioteca para utilizar e trabalhar imagens de uma maneira rápida e simples.

TensorFlow para deep learning: com cerca de 1500 contribuidores, essa é a biblioteca desenvolvida pelo Google Brain. Ela é muito utilizada para reconhecimento de voz e imagem, além de trabalhar muito bem com redes neurais artificiais e grafos. Ela conta com uma ótima interação com CPU e GPUs, permitindo alto paralelismo no processamento, o que a torna mais rápida e eficiente.

Pendulum para data e horário: essa biblioteca ganhou relevância no ano passado ao possibilitar trabalhar com o módulo padrão de datetime do Python. Ela trabalha muito bem a questão do fuso horário e permite fazer cálculos aritméticos com horas de maneira direta.

Sem a chance de terminar em cinzas como a biblioteca de Alexandria, o avanço de bibliotecas em Python traz inúmeras facilidades para quem busca desenvolver na linguagem, além de gerar um efeito rede no número de usuários contribuindo com linhas de código.