Galeria de mapas mentais Lista de bibliotecas PYTHON
Classificação de aplicativos da biblioteca Python, lista de bibliotecas Python fornece aos desenvolvedores recursos valiosos, ajuda-os a usar o Python de forma mais eficaz para resolver problemas práticos e promove o desenvolvimento de toda a comunidade Python.
Editado em 2024-02-15 21:03:36Lista de bibliotecas PYTHON
1. Desenvolvimento web:
* jQuery: biblioteca JavaScript usada para simplificar a passagem de documentos HTML, processamento de eventos, animação e outras operações.
* Bootstrap: uma estrutura front-end de código aberto para criar rapidamente sites e aplicativos da web com layout responsivo.
* React: Uma biblioteca JavaScript desenvolvida pelo Facebook, usada para construir interfaces de usuário e melhorar a eficiência do desenvolvimento por meio da componenteização.
* Vue: Uma estrutura JavaScript leve para construir interfaces de usuário com alto grau de flexibilidade e escalabilidade.
* Angular: Uma estrutura JavaScript desenvolvida pelo Google, usada principalmente para o desenvolvimento de aplicativos de página única.
2. Processamento e análise de dados:
* NumPy: biblioteca Python, usada para suportar um grande número de cálculos matemáticos e científicos, fornecendo operações eficientes de array multidimensional.
* Pandas: biblioteca de análise de dados Python, que fornece limpeza, processamento, análise de dados e outras funções.
* SciPy: Biblioteca de computação científica Python, que fornece muitas funções e algoritmos usados nas áreas de matemática, ciências e engenharia.
* Matplotlib: biblioteca de desenho Python, usada para desenhar vários gráficos estáticos, dinâmicos e interativos e efeitos de visualização.
3. Aprendizado de máquina:
* scikit-learn: biblioteca de aprendizado de máquina Python, que fornece implementação de vários algoritmos de aprendizado supervisionado e não supervisionado.
* TensorFlow: uma estrutura de aprendizado de máquina desenvolvida pelo Google que oferece suporte à construção e ao treinamento de aprendizado profundo e redes neurais.
* PyTorch: A estrutura de aprendizado de máquina desenvolvida pelo Facebook também oferece suporte à construção e treinamento de aprendizado profundo e redes neurais.
* Keras: uma API de rede neural de alto nível baseada em TensorFlow ou Theano para construir e treinar rapidamente modelos de aprendizado profundo.
4. Processamento de linguagem natural:
* NLTK: biblioteca de processamento de linguagem natural Python, que fornece processamento de texto, segmentação de palavras, marcação de classes gramaticais, análise sintática e outras funções.
* spaCy: biblioteca de processamento de linguagem natural Python, que fornece processamento de texto e modelos de linguagem eficientes e precisos.
* Gensim: biblioteca Python para tarefas como modelagem de tópicos e análise de similaridade de documentos.
5. Processamento de imagem e vídeo:
* OpenCV: Uma biblioteca de visão computacional de código aberto que fornece processamento de imagens, análise de vídeo, extração de recursos e outras funções.
* PIL (ou Pillow): Biblioteca de processamento de imagens Python, que fornece leitura, processamento, salvamento de imagens e outras funções.
* FFmpeg: Um conjunto de ferramentas de processamento de áudio e vídeo de código aberto que fornece codificação, decodificação, conversão de áudio e vídeo, processamento de mídia de streaming e outras funções.
6. Operações de banco de dados
SQLAlchemy: O kit de ferramentas SQL e o sistema de mapeamento objeto-relacional (ORM) do Python fornecem aos desenvolvedores de aplicativos um conjunto completo de modelos de persistência de nível empresarial.
Django ORM: a própria ferramenta de mapeamento objeto-relacional do Django permite que os desenvolvedores usem Python para processar bancos de dados.
Mongoose: a ferramenta de modelo de objeto do MongoDB fornece uma API elegante para Node.js processar dados do MongoDB.
7. Programação de rede e clientes HTTP
Solicitações: a biblioteca cliente HTTP do Python simplifica o envio de solicitações HTTP.
Axios: cliente HTTP baseado em promessa para navegador e Node.js.
Socket.IO: Biblioteca de comunicação em tempo real, bidirecional e baseada em eventos.
8. Teste
pytest: uma estrutura de teste madura e completa para Python.
Jest: Uma estrutura de teste de código aberto para JavaScript que se concentra na simplicidade e simplicidade.
JUnit: Uma estrutura de teste de unidade de programação para Java.
9. Segurança
OWASP Top 10: Não é uma biblioteca, mas um conjunto de recomendações e padrões para segurança de aplicações web.
bcrypt: Biblioteca multiplataforma para hash de senha.
OpenSSL: Uma poderosa biblioteca criptográfica Secure Sockets Layer que inclui os principais algoritmos de criptografia, funções de gerenciamento de encapsulamento de certificados e chaves comuns e protocolos SSL, e fornece um rico conjunto de aplicativos para testes ou outros fins.
10. Registro e monitoramento
Log4j: estrutura de registro Java.
Logback: Uma estrutura de log Java projetada como sucessora do Log4j.
Prometheus: Um kit de ferramentas de monitoramento e alerta de sistema de código aberto.
11. Implantação e Automação
Docker: tecnologia de conteinerização que torna a implantação de aplicativos mais fácil e consistente.
Kubernetes: um sistema de orquestração de contêineres de código aberto que implanta, dimensiona e gerencia automaticamente aplicativos em contêineres.
Ansible: Ferramenta para automatizar o gerenciamento e implantação de infraestrutura de TI.
12. Interface gráfica do usuário (GUI)
Tkinter: biblioteca GUI padrão do Python.
Qt: Biblioteca C GUI multiplataforma, também com ligações Python (como PyQt ou PySide).
Electron: Uma biblioteca de código aberto para construção de aplicativos de desktop multiplataforma usando JavaScript, HTML e CSS.
13. Desenvolvimento de jogos
Unity: Um mecanismo de desenvolvimento de jogos multiplataforma que oferece suporte a linguagens como C# e JavaScript.
Unreal Engine: Um mecanismo avançado usado principalmente para desenvolvimento de jogos AAA.
Pygame: biblioteca de desenvolvimento de jogos Python.
14. Algoritmos e Estruturas de Dados
Google Guava: biblioteca central Java, que fornece muitas estruturas de dados úteis e implementações de algoritmos, como mapeamento de vários valores, coleções de intervalos, gráficos, etc.
C STL (Standard Template Library): biblioteca padrão do C, que contém uma série de classes e funções de modelo usadas para lidar com problemas comuns de estrutura de dados e algoritmos.
Módulo de coleções do Python: parte da biblioteca padrão do Python, fornece muitas estruturas de dados úteis, como Counter, defaultdict, OrderedDict, etc.
15. Simultaneidade e multithreading
API de simultaneidade Java: um conjunto completo de APIs de simultaneidade e multithreading fornecidas por Java, incluindo threads, bloqueios, variáveis atômicas, coleções simultâneas, etc.
Módulos de threading e multiprocessamento do Python: a biblioteca padrão do Python fornece suporte a multithreading e multiprocessamento.
GoRoutines: um mecanismo de simultaneidade leve fornecido pela linguagem Go para implementar simultaneidade em programas Go.
16. Serialização e desserialização
Buffers de protocolo (protobuf): Um protocolo de serialização de dados desenvolvido pelo Google que oferece suporte a vários idiomas e possui alta eficiência e compatibilidade futura.
JSON.NET: uma estrutura JSON de alto desempenho na plataforma .NET para lidar com a serialização e desserialização de dados JSON.
PyYAML: um analisador e gerador YAML para Python que lida com serialização e desserialização de dados YAML.
17. Computação Científica e Visualização
Mayavi: uma biblioteca de visualização 3D baseada em Python que fornece funções avançadas de visualização de dados científicos.
Plotly: uma biblioteca de visualização de dados de código aberto que suporta Python, R, MATLAB e outras linguagens e pode criar gráficos 2D e 3D interativos.
D3.js: biblioteca JavaScript para criação de documentos baseados em dados. Ele permite vincular dados arbitrários ao DOM e, em seguida, aplicar transformações orientadas por dados ao documento. Usando-o você pode criar várias visualizações de dados.
18. Comunicação em tempo real
WebSocket: Um protocolo que fornece comunicação full-duplex em uma única conexão TCP. Muitas bibliotecas suportam WebSocket, como a `WebSocket API` do JavaScript, a biblioteca `websockets` do Python, etc.
SignalR: biblioteca ASP.NET para simplificar o processo de adição de funcionalidade da web em tempo real a aplicativos da web.
Socket.IO: uma biblioteca JavaScript para aplicativos em tempo real que permite comunicação bidirecional baseada em eventos em tempo real entre o navegador e o servidor.
19. Processamento de e-mail
Módulos smtplib e email do Python: biblioteca padrão do Python para envio e recebimento de emails.
API JavaMail: API de processamento de correio na plataforma Java para envio e recebimento de e-mails.
Nodemailer: um módulo para Node.js usado para enviar emails.
20. Mapas e Sistemas de Informação Geográfica (SIG)
Folheto: biblioteca JavaScript para mapas interativos compatíveis com dispositivos móveis.
OpenLayers: Uma biblioteca JavaScript de código aberto para construção de mapas e aplicativos GIS.
Geopandas: Um projeto de código aberto em Python que facilita o trabalho com dados geoespaciais em Python.
21. Reconhecimento de fala e processamento de linguagem natural (continuação)
Rasa NLU: Uma biblioteca de processamento de linguagem natural de código aberto focada na construção de assistentes e chatbots baseados em texto.
spaCy (continuação): Além das funções mencionadas anteriormente, spaCy também inclui funções como reconhecimento de entidade nomeada e análise de sintaxe de dependência.
Kaldi: Uma caixa de ferramentas de reconhecimento de fala de código aberto, amplamente utilizada em pesquisas de reconhecimento de fala.
22. Comércio eletrônico e pagamentos
Stripe: Plataforma de pagamentos que fornece APIs para processar pagamentos online, com bibliotecas em diversos idiomas.
SDKs do PayPal: kits de desenvolvimento de software para integração de serviços de pagamento do PayPal.
API Shopify: API e biblioteca que fornece serviços de integração para lojas de comércio eletrônico.
23. Computação e armazenamento em nuvem
AWS SDKs: kits de desenvolvimento de software fornecidos pela Amazon Web Services para acessar sua ampla gama de serviços em nuvem.
Bibliotecas de cliente do Google Cloud: bibliotecas de cliente para acessar os serviços do Google Cloud Platform.
SDKs do Azure: kits de desenvolvimento de software do Microsoft Azure para criar e gerenciar recursos do Azure.
24. Internet das Coisas (IoT)
MQTT (Message Queuing Telemetry Transport): protocolo leve de transporte de mensagens de publicação/assinatura, comumente usado em projetos de IoT. Existem bibliotecas para diversas linguagens, como Paho MQTT.
Bibliotecas Raspberry Pi: Várias bibliotecas fornecidas para a plataforma de hardware Raspberry Pi para a construção de projetos de IoT.
Bibliotecas Arduino: Bibliotecas fornecidas para a plataforma Arduino para simplificar a interação de hardware e o desenvolvimento de IoT.
25. Criptografia e Segurança (continuação)
OpenSSL (continuação): Além das funções mencionadas anteriormente, o OpenSSL é amplamente utilizado para implementar os protocolos SSL e TLS e para gerar e gerenciar certificados.
Bouncy Castle: uma biblioteca de criptografia para Java e C# que fornece uma ampla variedade de implementações de algoritmos de criptografia.
Cryptopp: biblioteca de criptografia C, que fornece implementação de algoritmo de criptografia de alto desempenho.
26. Automação e Automação Robótica de Processos (RPA)
Selenium: Ferramentas e bibliotecas para automatizar as interações do navegador web.
Puppeteer: biblioteca Node.js que fornece uma maneira de manipular o navegador Chrome ou Chromium para automação.
Appium: ferramenta de código aberto para automatizar aplicativos móveis, web e híbridos.
27. Aprendizado de Máquina e Inteligência Artificial
TensorFlow: uma biblioteca de aprendizado de máquina de código aberto desenvolvida pelo Google, que oferece suporte a aprendizado profundo, redes neurais, etc., e fornece uma variedade de APIs e ferramentas.
PyTorch: Uma biblioteca de aprendizado de máquina de código aberto desenvolvida pelo Facebook Artificial Intelligence Research Institute, que é especialmente adequada para tarefas como visão computacional e processamento de linguagem natural.
Scikit-learn: uma biblioteca de aprendizado de máquina baseada em Python que fornece um grande número de algoritmos e ferramentas de aprendizado de máquina simples e eficientes.
28. Visualização e análise de dados (continuação)
Dash: Uma estrutura web para Python projetada especificamente para construir aplicativos web para visualização e análise de dados.
Bokeh: biblioteca interativa de visualização de dados do Python que pode criar gráficos estatísticos complexos e oferece suporte a grandes conjuntos de dados.
Seaborn: uma biblioteca de visualização de dados Python baseada em matplotlib que se concentra na plotagem estatística e fornece uma interface mais avançada e estilos padrão mais bonitos.
29. Gerador de site estático
Hugo: Um gerador de sites estáticos rápido e flexível escrito em Go.
Jekyll: Gerador de sites estáticos baseado em Ruby, especialmente adequado para blogs e sites pessoais.
Gatsby: gerador de sites estáticos construído com React e GraphQL, oferecendo plug-ins e ecossistema ricos.
30. Programação funcional
Lodash: Uma biblioteca de funções práticas para JavaScript que fornece muitas funções para lidar com tarefas comuns, como arrays, objetos, números, etc.
Ramda: Uma biblioteca JavaScript focada no estilo de programação funcional, fornecendo recursos como funções puras e currying automático.
Scalaz: Uma biblioteca de programação funcional para a linguagem Scala que contém um rico conjunto de abstrações de programação funcional e estruturas de dados.
31. Programação assíncrona e simultaneidade (continuação)
assíncrono: a estrutura de E/S assíncrona do Python suporta programação simultânea e assíncrona, especialmente adequada para programação de rede e aplicações web.
Akka: Uma estrutura de programação simultânea escrita em Scala e Java que fornece recursos de computação simultânea e distribuída com base no modelo Actor.
Vert.x: Uma plataforma de aplicativos assíncrona e multilíngue construída na JVM, com suporte para Java, Scala, Groovy, JavaScript e outras linguagens.
32. Gráficos e processamento de imagens
Pillow: A biblioteca de processamento de imagens do Python, um ramo da PIL (Python Imaging Library), oferece uma ampla gama de funções de processamento de imagens.
OpenCV: Uma biblioteca de código aberto de visão computacional e aprendizado de máquina que oferece suporte a vários idiomas e plataformas e é amplamente utilizada em processamento de imagens, detecção de alvos e outros campos.
Three.js: uma biblioteca de gráficos 3D JavaScript baseada em WebGL para criar e exibir gráficos 3D em um navegador da web.
33. Conteinerização e microsserviços
Docker: tecnologia de conteinerização que permite aos desenvolvedores empacotar aplicativos e suas dependências em um contêiner portátil e implantá-lo facilmente em qualquer ambiente.
Kubernetes (K8s): uma plataforma de orquestração de contêineres de código aberto que oferece a capacidade de implantar, dimensionar e gerenciar automaticamente aplicativos em contêineres.
Istio: uma malha de serviço de código aberto que gerencia a comunicação entre microsserviços e fornece funções como gerenciamento de tráfego, segurança e aplicação de políticas.
34. Chamada de procedimento remoto (RPC)
gRPC: Uma estrutura RPC universal, de código aberto e de alto desempenho desenvolvida pelo Google que oferece suporte a vários idiomas e plataformas.
Thrift: A estrutura RPC desenvolvida pelo Facebook Artificial Intelligence Research Institute suporta múltiplas linguagens de programação e protocolos de transmissão.
Apache Dubbo: Uma estrutura Java RPC leve e de alto desempenho, especialmente adequada para arquitetura de microsserviços.
35. Processamento e streaming de vídeo
FFmpeg: uma biblioteca de processamento de áudio e vídeo de código aberto que oferece uma ampla gama de codecs de áudio e vídeo, conversão, processamento de stream e outras funções.
GStreamer: Uma biblioteca para construção de componentes de processamento de mídia, suportando áudio, vídeo, streaming de mídia e outras aplicações.
HLS (HTTP Live Streaming): Um protocolo de transmissão de mídia de streaming lançado pela Apple, que é amplamente utilizado para transmissão de vídeo online ao vivo e sob demanda.
36. Desenvolvimento de jogos
Unity3D: um mecanismo de desenvolvimento de jogos multiplataforma que oferece suporte a múltiplas plataformas e dispositivos e fornece uma variedade de ferramentas e recursos.
Unreal Engine: Uma poderosa plataforma de desenvolvimento de jogos 3D em tempo real que oferece efeitos visuais realistas e recursos avançados de design de jogos.
Phaser.js: Um framework de jogos 2D baseado em HTML5, escrito em JavaScript, adequado para desenvolvimento de jogos na web e em dispositivos móveis.
37. Testes automatizados
Selenium (continuação): Além de ser usado para automação de navegadores web, o Selenium também oferece suporte a testes automatizados de aplicativos móveis, aplicativos de desktop e outras plataformas.
Appium (continuação): Ferramenta de teste de automação de aplicativos móveis com suporte para plataformas iOS e Android.
Jest: Uma estrutura de teste de JavaScript desenvolvida pelo Facebook Artificial Intelligence Research Institute, que é especialmente adequada para testar estruturas de front-end como React.
38. Processamento de texto e processamento de linguagem natural (PNL) (continuação)
NLTK (Natural Language Toolkit): A biblioteca de PNL do Python oferece uma variedade de ferramentas e recursos de processamento de texto.
spaCy (continuação): Além das funções mencionadas anteriormente, spaCy também oferece suporte a tarefas avançadas de PNL, como processamento multilíngue e classificação de texto.
Transformers: A biblioteca de PNL desenvolvida pela Hugging Face oferece um grande número de modelos de Transformers pré-treinados, como BERT, GPT, etc.
39. Mensagens em tempo real e WebSocket
Socket.IO: uma estrutura de aplicativo em tempo real baseada em Node.js, com suporte a vários protocolos de comunicação em tempo real, como WebSocket e sondagem longa.
SignalR: biblioteca ASP.NET da Microsoft para simplificar o processo de adição de funcionalidade da web em tempo real aos seus aplicativos da web.
API WebSockets: A interface WebSocket nativa fornecida por navegadores modernos para estabelecer comunicação bidirecional persistente entre clientes e servidores.
40. Registro e monitoramento
ELK Stack (Elasticsearch, Logstash, Kibana): Solução de código aberto para gerenciamento centralizado de logs, pesquisa, análise e visualização.
Prometheus: um kit de ferramentas de monitoramento e alerta de código aberto, especialmente adequado para ambientes nativos de nuvem.
Graylog: uma solução de gerenciamento de log de código aberto que suporta múltiplas fontes de log e análise em tempo real.
41. Sistemas distribuídos e protocolos de consenso
Apache ZooKeeper: Serviço de coordenação distribuído, usado para manter informações de configuração, nome, fornecer sincronização distribuída e fornecer serviços de grupo.
Raft: Um algoritmo de consenso para gerenciar logs replicados, usado como componente central em muitos sistemas distribuídos.
etcd: Sistema de armazenamento de valor-chave para configuração compartilhada e descoberta de serviços, frequentemente usado com plataformas de orquestração de contêineres, como Kubernetes.
42. Computação Científica e Análise de Dados
NumPy: biblioteca de computação numérica do Python, que fornece ferramentas e objetos de array multidimensionais de alto desempenho.
Pandas: a biblioteca de análise de dados do Python fornece estruturas e ferramentas de análise de dados, especialmente adequadas para tarefas de processamento e análise de dados.
Matplotlib: biblioteca de plotagem do Python para criação de gráficos 2D e 3D estáticos, dinâmicos e interativos.
43. Sistemas Embarcados e Internet das Coisas (IoT) (continuação)
Arduino IDE: Um ambiente de desenvolvimento integrado fornecido para a plataforma Arduino para escrever e enviar código para a placa Arduino.
Raspberry Pi OS (Raspbian): Um sistema operacional personalizado para a plataforma de hardware Raspberry Pi, fornecendo uma grande variedade de software e ferramentas de desenvolvimento.
MQTT (continuação): Além das funções mencionadas anteriormente, o MQTT também oferece suporte a vários modos de mensagens, como publicação/assinatura, ponto a ponto, etc., o que é especialmente adequado para cenários de IoT.
44. Qualidade de código e integração/implantação contínua (CI/CD)
SonarQube: uma plataforma para detectar automaticamente a qualidade do código e fornecer recomendações de correção.
Jenkins: um servidor de automação de código aberto usado para oferecer suporte à integração e implantação contínuas no processo de desenvolvimento de software.
GitLab CI/CD: A solução integrada de integração contínua e implantação contínua fornecida pelo GitLab está totalmente integrada ao armazém de código e às funções de gerenciamento de projetos do GitLab.