


We have compiled 100 selected Python libraries. It is recommended to collect them!
Text
Hello everyone, I am Python artificial intelligence technology
Why Python is so popular and so many people learn it is because it is simple and easy to learn. The functions are powerful, the entire community is very active, and there is a lot of information. And this language involves all aspects, such as automated testing, operation and maintenance, crawlers, data analysis, machine learning, financial fields, back-end development, cloud computing, and game development.
Tall buildings are rising from the ground. The Python building can be so powerful because it has the support of thousands of powerful libraries and countless awesome wheels supporting this building. Today we will sort it out together. Overlooking the entire Python treasure house.
I have roughly listed the application methods of the entire Python library, and roughly calculated there are more than 20 directions. The left and right sides are divided into two directions. The left side is responsible for attacking (mainly outside). Each item individually is a high-quality product, and they are all top products in Python applications. The right side is responsible for defense (mainly inside), which involves the underlying configuration, which is considered the entire The foundation of the building.
Below we select high-quality libraries in each field and show them to everyone. After reading them, you will definitely shout, WC, I have never seen so many libraries~~
1 , The underlying infrastructure of the Python building
Environment management
- Tools for managing Python versions and environments
p: A very simple interactive python version management tool .
pyenv: Simple Python version management tool.
Vex: You can execute commands in a virtual environment.
virtualenv: Tool for creating independent Python environments.
buildout: Use declarative configuration management after isolation environment initialization.
Package Management
- Tools for managing packages and dependencies.
pip: Python package and dependency management tool.
pip-tools: A set of tools to ensure that Python package dependencies are updated.
pipenv: Python’s officially recommended new generation package management tool.
poetry: A package management tool that can completely replace setup.py.
conda: Cross-platform, Python binary package management tool.
Curdling: A command line tool for managing Python packages.
wheel: The new standard for Python distribution, intended to replace eggs.
Distribution
- Package as executable file for distribution.
PyInstaller: Convert Python programs into independent executable files (cross-platform).
cx_Freeze: Convert the python program into an executable file with a dynamic link library.
dh-virtualenv: Build and distribute the virtualenv virtual environment as a Debian package.
Nuitka: Compile scripts, modules, and packages into executable files or extension modules.
py2app: Turn a Python script into a standalone package (Mac OS X).
py2exe: Turn a Python script into a standalone package (Windows).
pynsist: A tool for creating Windows installers that package Python itself within the installer.
Configuration
- Library used to save and parse configuration.
config: A hierarchical configuration module written by the author of the logging module.
ConfigObj: INI file parser with verification function.
ConfigParser: (Python standard library) INI file parser.
profig: Configuration through multiple formats, with numerical conversion function.
python-decouple: Completely isolate settings and code.
2. Management configuration of Python building
Files
aiofiles: Based on asyncio, providing asynchronous file operations
imghdr: (Python standard library) detects image types
mimetypes: (Python standard library) maps file names to MIME types
path.py: module that encapsulates os.path
pathlib: (Python3.4 standard library) cross-platform, object-oriented path operation library
python-magic: Python interface of the third-party library libmagic for file type detection
Unipath: Manipulate files and directories in an object-oriented way
watchdog: API and shell tool for managing file system events
Date and time
- Manipulate date and time class library.
arrow: A better Python date and time manipulation library.
Chronyk: Python 3 class library for parsing handwritten time and date formats.
dateutil: An extension to the Python datetime module.
delorean: A library that solves tricky problems with date processing in Python.
maya: Humanized time processing library.
moment: A Python library for working with times and dates. Inspired by Moment.js.
pendulum: A time manipulation library with more explicit, predictable behavior than arrow.
PyTime: A simple and easy-to-use Python module for manipulating date/time via strings.
pytz: Modern and historical versions of world time zone definitions. Bringing time zone databases to Python.
when.py: Provides user-friendly functions to help users perform common date and time operations.
Text processing
-
Library forparsing and manipulating text. - General
chardet: character encoding detector, compatible with Python2 and Python3.
difflib: (Python standard library) helps us perform differential comparisons.
ftfy: Make Unicode text more complete and coherent.
fuzzywuzzy: fuzzy string matching.
Levenshtein: Quickly calculate edit distance and string similarity.
pangu.py: Add spaces between Chinese, Japanese and Korean characters and numeric letters.
pypinyin: Chinese pinyin conversion tool Python version.
shortuuid: A generator library for generating concise, unambiguous, URL-safe UUIDs.
simplejson: Python’s JSON encoder and decoder.
unidecode: ASCII converted form of Unicode text.
uniout: Print readable characters instead of escaped strings.
xpinyin: A library for converting Chinese characters into Pinyin.
yfiglet-figlet: pyfiglet - Python implementation of figlet.
flashtext: An efficient text search and replacement library.
- Slugification
awesome-slugify: A Python slugification library that preserves Unicode.
python-slugify: Python slugification library that can convert unicode to ASCII.
unicode-slugify: A slug tool that can generate unicode slugs and requires Django.
- Parser
phonenumbers: Parse, format, store, and verify phone numbers.
PLY: Python implementation of the lex and yacc parsing tools.
Pygments: Universal syntax highlighting tool.
pyparsing: A framework for generating universal parsers.
python-nameparser: Decompose a person's name into several independent parts.
python-user-agents: Browser user agent parser.
sqlparse: A validation-free SQL parser.
Office text format processing
- General
tablib: A module used to process table data.
⭐python-office: A third-party library for automated office work.
- Office
Marmir: Convert input Python data structures into spreadsheets.
openpyxl: A library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files.
pyexcel: A library that provides a unified API for reading, writing, and operating Excel files.
python-docx: Read, query and modify Microsoft Word 2007/2008 docx files.
relatorio: Template OpenDocument files.
unoconv: Convert between any file formats supported by LibreOffice/OpenOffice.
XlsxWriter: A Python module for creating Excel .xlsx files.
xlwings: A library that makes it easy to call Python from Excel (and vice versa), based on the BSD protocol.
xlwt: Read and write data and format information of Excel files.
PDFMiner: A tool for extracting information from PDF documents.
PyPDF2: A library that can split, merge and convert PDF pages.
ReportLab: Quickly create rich text PDF documents.
- Markdown
Mistune: A fast and full-featured pure Python implementation of the Markdown parser.
Python-Markdown: A Python implementation of John Gruber’s Markdown.
Python-Markdown2: Pure Python implementation of the Markdown parser, faster and more accurate than Python-Markdown
- YAML
PyYAML: Python version YAML parser.
- CSV
csvkit: Tools for converting and manipulating CSV.
Configuration
- Library used to save and parse configuration.
config: A hierarchical configuration module written by the author of the logging module.
ConfigObj: INI file parser with verification function.
ConfigParser: (Python standard library) INI file parser.
profig: Configuration through multiple formats, with numerical conversion function.
python-decouple: Completely isolate settings and code.
Command Line Tools
- Library for creating command line programs.
- Command Line Program Development
asciimatics: Cross-platform, full-screen terminal package (i.e. mouse/keyboard input and colored, positioned text output), complete with advanced advanced complex animations and special effects API.
cement: Python’s command line program framework.
click: A package for creating beautiful command line interfaces through combination.
cliff: A framework for creating command line programs with multiple layers of commands.
clint: Python command line program tool.
colorama: Cross-platform colored terminal text.
docopt: Python-style command line argument parser.
Gooey: A command that turns a command line program into a GUI program.
python-prompt-toolkit: A library for building powerful interactive command line programs.
python-fire: A library produced by Google for building command line interfaces based on Python classes.
Pythonpy: Execute any Python instruction directly from the command line.
Pictures pictures pictures pictures pictures
Awesome! N open source projects that are essential for taking on private work! Hurry and collect it
- Productivity Tools
aws-cli: Common command line interface for Amazon Web Services.
bashplotlib: Basic drawing in the terminal.
caniusepython3: Determine which project is preventing you from porting to Python3.
cookiecutter: A command line tool for creating projects from cookiecutters (project templates).
doitlive: A tool for live demonstrations in the terminal.
pyftpdlib: A blazingly fast and extensible Python FTP service library.
howdoi: Get instant answers to your programming questions via the command line.
httpie: A command-line HTTP client, a replacement for cURL that is easier to use.
PathPicker: Pick files from bash output.
percol: Adds interactive selection capabilities to the UNIX shell traditional pipe concept.
SAWS: An enhanced version of the AWS command line.
thefuck: Fix your previous command line instructions.
mycli: A MySQL command line client with auto-completion and syntax highlighting.
pgcli: Postgres command line tool with auto-completion and syntax highlighting.
try: A command line tool for trying out python libraries has never been easier.
3. The warehouse of Python Building
Database
- A database implemented by Python.
pickleDB: A simple, lightweight key-value storage database.
PipelineDB: Streaming SQL database.
TinyDB: A micro, document-oriented database.
ZODB: A Python native object database. A key-value and object graph database.
Database driver
- Library used to connect and operate the database.
- MySQL: awesome-mysql series
aiomysql: an asynchronous MySQL database operation library based on asyncio.
mysql-python: MySQL database connector for Python.
ysqlclient: mysql-python branch, supports Python 3.
oursql: A better MySQL connector with support for native precompiled directives and BLOBs.
PyMySQL: Pure Python MySQL driver, compatible with mysql-python.
- PostgreSQL
psycopg2: The most popular PostgreSQL adapter in Python.
queries: A wrapper of the psycopg2 library, used to interact with PostgreSQL.
txpostgres: Twisted-based asynchronous PostgreSQL driver.
- Other relational databases
apsw: Another Python SQLite wrapper.
dataset: Stores a Python dictionary in a database
pymssql: A simple Microsoft SQL Server database interface.
- NoSQL Databases
asyncio-redis: A redis client based on asyncio (PEP 3156).
cassandra-python-driver: Python driver for Cassandra.
HappyBase: A developer-friendly library designed for Apache HBase.
Plyvel: A fast and feature-rich Python interface to LevelDB.
py2neo: Python wrapper client for Neo4j restful interface.
pycassa: Python Thrift driver for Cassandra.
PyMongo: The official Python client for MongoDB.
redis-py: Python client for Redis.
telephus: Cassandra client based on Twisted.
txRedis: Redis client based on Twisted.
4. Network communication in Python building
Network
- Library for network programming.
asyncio: (Python standard library) Asynchronous I/O, event loops, coroutines and tasks.
Twisted: An event-driven network engine.
pulsar: event-driven concurrency framework.
diesel: Greenlet-based event I/O framework.
pyzmq: A Python wrapper for the ZeroMQ messaging library.
Toapi: A lightweight, simple, and fast Flask library dedicated to providing API services for all websites.
txZMQ: A Python wrapper for the ZeroMQ messaging library based on Twisted.
HTTP
- Library for using HTTP.
aiohttp: Asynchronous HTTP network library based on asyncio.
requests: Humanized HTTP request library.
grequests: requests library gevent, for asynchronous HTTP requests.
httplib2: Comprehensive HTTP client library.
treq: A requests-like Python API built on top of the Twisted HTTP client.
urllib3: A clear and friendly HTTP library with thread-safe connection pool, support for file post.
WebSocket Library to help use WebSocket. In addition, when searching for public accounts, Linux should learn how to reply "monkey" in the background and get a surprise gift package.
AutobahnPython: For Python, using WebSocket & WAMP based on Twisted and asyncio.
Crossbar: Open source unified application routing (Websocket & WAMP for Python on Autobahn).
django-socketio: WebSockets for Django.
WebSocket-for-Python: WebSocket client and server library written for Python2/3 and PyPy.
WSGI Server
- WSGI-compatible web server
gunicorn: Pre-forked, partially written in C language.
uwsgi: The purpose of the uwsgi project is to develop a set of full-stack tools for building managed services, written in C language.
bjoern: Asynchronous, very fast, written in C.
fapws3: Asynchronous (for network side only), written in C language.
meinheld: Asynchronous, partly written in C.
netius: Asynchronous, very fast.
paste: multi-threaded, stable and proven.
rocket: multi-threaded.
waitress: multi-threading, which drives the Pyramid framework.
Werkzeug: A WSGI tool library that drives Flask and can be easily embedded into your project.
Web Framework
- Full stack web framework.
Django: The most popular web framework in the Python world.
Flask: A Python micro-framework.
pyramid: A small, fast, and down-to-earth open source Python web framework.
Bottle: A fast, small, lightweight WSGI micro web framework.
CherryPy: A minimalist Python web framework that complies with the HTTP/1.1 protocol and has a WSGI thread pool.
TurboGears: A micro-framework that can be extended into a full-stack solution.
Tornado: a web framework and asynchronous networking library.
sanic: Asynchronous network framework based on Python3.5.
starlette: A lightweight, high-performance ASGI framework
E-commerce
- A framework and library for e-commerce and payment.
django-oscar: An open source e-commerce framework for Django.
django-shop: A shop system based on Django.
Cartridge: A shopping cart application built on Mezzanine.
shoop: An open source e-commerce platform based on Django.
alipay: Unofficial Python Alipay API.
merchant: A Django application that can accept payments from multiple payment platforms.
money: A currency library. Comes with optional CLDR backend localization format, providing a scalable currency exchange solution.
python-currencies: Display currency format and its numerical value.
RESTful API
- Library for developing RESTful APIs
- Django
django-rest-framework: a powerful and flexible Tools for building web APIs.
django-tastypie: Develop APIs for Django applications.
django-formapi: Create JSON APIs for Django form validation.
- Flask
flask-api: Developed for flask, browse Web APIs.
flask-restful: Quickly create REST APIs for flask.
flask-restless: Create RESTful APIs for database models defined by SQLAlchemy.
flask-api-utils: Handles API representation and validation for Flask.
eve: REST API framework, driven by Flask, MongoDB, etc.
- Pyramid
cornice: A REST framework for Pyramid.
- Framework-agnostic
falcon: A high-performance framework for building cloud APIs and web app backends.
sandman: Automatically create REST APIs for existing database-driven systems.
restless: A framework-agnostic REST framework based on lessons learned from Tastypie.
ripozo: Quickly create REST/HATEOAS/Hypermedia APIs.
Template engine
- Libraries and tools for template generation and lexical parsing.
Jinja2: A modern, designer-friendly template engine.
Chameleon: An HTML/XML template engine. Imitates ZPT (Zope Page Templates) and optimizes the speed.
Genshi: Python template tool for generating web-aware results.
Mako: Ultra-fast lightweight templates for the Python platform.
Queue
- Library for handling events and task queues.
celery: an asynchronous task queue/job queue, based on distributed messaging.
huey: Small multi-threaded task queue.
mrq: Mr. Queue - A Python distributed worker task queue using Redis and gevent.
rq: Simple Python job queue.
simpleq: A simple, infinitely scalable queue based on Amazon SQS.
Search
- Libraries and software that index data and perform search queries.
django-haystack: Modular search for Django.
elasticsearch-py: The official underlying Python client for Elasticsearch.
elasticsearch-dsl-py: The official high-level Python client for Elasticsearch.
solrpy: Python client for solr.
Whoosh: A fast pure Python search engine library.
- Library for sending and parsing emails.
django-celery-ses: Django email backend with AWS SES and Celery.
envelopes: An email library for human use.
flanker: An email address and Mime parsing library.
imbox: Python IMAP library.
inbox.py: Python SMTP server.
inbox: An open source email toolbox.
lamson: Python style SMTP application server.
mailjet: Mailjet API implementation, used to provide batch email sending, statistics and other functions.
marrow.mailer: A high-performance scalable email distribution framework.
modoboa: An email hosting and management platform with a modern, minimalist web UI.
pyzmail: Create, send and parse emails.
Talon: Mailgun library, used to extract information and signatures.
yagmail: yagmail is a GMAIL/SMTP client designed to make sending email as simple as possible.
URL Handling
- Library for parsing URLs
furl: A small Python library that makes handling URLs easier.
purl: A simple, immutable URL class with a concise API for interrogation and processing.
pyshorteners: A pure Python URL shortening library.
shorturl: Python implementation for generating short URLs and short links similar to bit.ly.
webargs: A library for parsing HTTP request parameters with built-in support for popular web frameworks, including Flask, Django, Bottle, Tornado and Pyramid.
5. Power system of Python building
Process
- Operating system process startup and communication library.
envoy: More user-friendly than the Python subprocess module.
sarge: Another encapsulation of the subprocess module.
sh: A complete subprocess replacement library.
Concurrency and parallelism
- Library for concurrent and parallel operations.
multiprocessing: (Python standard library) Process-based "thread" interface.
threading: (Python standard library) Higher-level threading interface.
eventlet: an asynchronous framework that supports WSGI.
gevent: A coroutine-based Python networking library using greenlet.
Tomorrow: A magical decorator syntax implementation for generating asynchronous code.
uvloop: Ultra-fast implementation of asyncio event loop on top of libuv.
#If you don’t know it, you will be surprised at first glance. There are really too many Python libraries. The above 100 libraries are only part of the Python empire building and are responsible for building the internal cornerstone of the building. Later, Xiao F will continue to introduce the library of Python applications, so stay tuned.
We welcome students who need it to try it. If this article is helpful to you, please give it a like and watch it! ❤️
There are more high-quality project system learning resources on GitHub. Welcome to share them with other students!
The above is the detailed content of We have compiled 100 selected Python libraries. It is recommended to collect them!. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

PHP is mainly procedural programming, but also supports object-oriented programming (OOP); Python supports a variety of paradigms, including OOP, functional and procedural programming. PHP is suitable for web development, and Python is suitable for a variety of applications such as data analysis and machine learning.

PHP is suitable for web development and rapid prototyping, and Python is suitable for data science and machine learning. 1.PHP is used for dynamic web development, with simple syntax and suitable for rapid development. 2. Python has concise syntax, is suitable for multiple fields, and has a strong library ecosystem.

PHP originated in 1994 and was developed by RasmusLerdorf. It was originally used to track website visitors and gradually evolved into a server-side scripting language and was widely used in web development. Python was developed by Guidovan Rossum in the late 1980s and was first released in 1991. It emphasizes code readability and simplicity, and is suitable for scientific computing, data analysis and other fields.

Python is more suitable for beginners, with a smooth learning curve and concise syntax; JavaScript is suitable for front-end development, with a steep learning curve and flexible syntax. 1. Python syntax is intuitive and suitable for data science and back-end development. 2. JavaScript is flexible and widely used in front-end and server-side programming.

To run Python code in Sublime Text, you need to install the Python plug-in first, then create a .py file and write the code, and finally press Ctrl B to run the code, and the output will be displayed in the console.

VS Code can run on Windows 8, but the experience may not be great. First make sure the system has been updated to the latest patch, then download the VS Code installation package that matches the system architecture and install it as prompted. After installation, be aware that some extensions may be incompatible with Windows 8 and need to look for alternative extensions or use newer Windows systems in a virtual machine. Install the necessary extensions to check whether they work properly. Although VS Code is feasible on Windows 8, it is recommended to upgrade to a newer Windows system for a better development experience and security.

Writing code in Visual Studio Code (VSCode) is simple and easy to use. Just install VSCode, create a project, select a language, create a file, write code, save and run it. The advantages of VSCode include cross-platform, free and open source, powerful features, rich extensions, and lightweight and fast.

VS Code can be used to write Python and provides many features that make it an ideal tool for developing Python applications. It allows users to: install Python extensions to get functions such as code completion, syntax highlighting, and debugging. Use the debugger to track code step by step, find and fix errors. Integrate Git for version control. Use code formatting tools to maintain code consistency. Use the Linting tool to spot potential problems ahead of time.
