Python is a popular general purpose programming language which prioritizes readability.
Globally relevant Python information.
- Python Enchancement Proposals - Index
- Classifiers List - An actual list of all legitimate classifiers to be used in Python packages.
- fstring.help - A cheat-sheet website which provides insight towards the stuff possible with f-strings
- How to build a package with
pyproject.toml(setuptools) - How to build a package with
setup.cfg(setuptools) - Python File Modes Explanations - All those
r w a r+ w+, blah blah blah? An explanation for those. - Type Theory: Type Variance in Python
- ast_selector - A package which allows CSS selector style querying on Python AST's
- datamodel-code-generator - Generates python code from schemas.
- prestring - A utility package to generate valid Pythonic Source-Code.
- Pipe - A Python library to use infix notations in Python
- Rich - Make beautiful CLI applications, very easily.
- Textual - A TUI abstraction over Rich. Looks awesome!
- pyTermTk - A Python TUI library. Not Textual. Still seemingly cool looking. Has graphs and stuff.
- httpx - My favorite http client.
- requests - The most known HTTP client for Python.
- aiohttp - Another popular http package w/ async support.
- FastAPI - The most popular modern HTTP framework for Python as far as I know. - Supports OpenAPI generation and stuff. - Fast w/ async support. - Integrates well with Pydantic.
- streamlit - Let's you turn data scripts into sharable web apps. Not a self-hosted service.
- Pydantic - The most popular data-serialization framework for Python, as far as I know.
- dill - An extension of python's
picklemodule. Pretty popular. - oyaml - YAML package that maintains the order of keys
- snoop - A tracing/debugging toolkit thingy. I'm not sure exactly what, but it's cool.
- pytest - The de-facto testing framework for Python
- pytest-monitor
- pytest-profiling
- Awesome Pytest - A list of
pytestresources. - pytest-subsets - Looks like a way to "split" a test into "segments"; With each being reported separately.
- pytest-benchmark
- ward - An interesting, alternative testing-framework for Python. All things considered I'd have preferred this one if pytest wasn't already the clear winner..
- memray - A suddenly incredibly popular memory profiler. It was initially private as far as I know, and soon after it was released to the public it became immensely popular, very quickly.
- line-profiler
- memory-profiler
- PyPerf - Toolkit to write, run and analyze benchmarks. Same idea as
Py-Spy, but from kernel-space. - py-spy - sampling profiler for Python programs.
- Pyroscope
- Tuna - A viewer for those
cProfilething, that looks different fromsnakeviz.
- black - The currently most popular automatic formatter for Python. Really rigid, but that's a "feature".
- pylint - The pretty-much most popular linter for Python. Is very involved in the code. Will be effective only if used pragmatically.
- Pylint Message Control
- Flake8 - A popular Python linter that's more focused on coding conventions.
- PyUP - Python Dependency Security real-time service. Kinda like
snykfrom my understanding. - Bandit - A security linter from PyCQA
- watchfiles - A package to watch changes in local directory.
- magicalimport - Importing a module from physical file path.
- pox - A collection of utilities for navigating and manipulating filesystems.
- pathspec - A utility library for pattern matching of file paths. So far this only includes Git’s wildmatch pattern matching which itself is derived from Rsync’s wildmatch.
- mkdocs - The best documentation generator for Programming Projects. Written in Python. Has a sweet GitHub-Pages integration.
- mkdocstrings - Automatic documentation from sources, for MkDocs.
- mkdocs-click - Generate mkdocs pages from
clickapps. - interrogate - Validates that all of the things are documented?
- huey - A small Task-Queue for Python
- rocketry - A scheduling framework for Python. Strives for simplicity.
- pathos - "parallel graph management and execution in heterogeneous computing"
- mpire -
MultiProcessingIsReallyEasy - Another concurrency package for Python
- pasta - A Python refactoring tool based on the
astmodule. Comes in the form of an SDK.
- objgraph - A module that lets you visually explore Python object graphs.
- cheat.sh - Unified access to the best community driven cheat sheets repositories of the world.
- dunk - Prettier git diffs.
- mypyc - Compiled Python code to a Python extension. Based on type hinting. Seems to actually work!
- Pokete - It's a Pokemon, but in a terminal.
- Dinghy - A GitHub activity digest tool.
- Jira - A client for Jira.
- pip-review
- pydeps - Python module dependency visualization
- pip-run - Run one-off Python scripts that have requirements (defined inlined)
- distlib
Some reading material I wanted to get to.
- What's dictproxy?
- Instagram - Copy-on-write friendly Python garbage collection
- Python Decorators - Cool Example Tweet
- Did you know that the Python 🐍
functools.reduceanditertools.accumulateare related? - How I added C-style for-loops to Python
Stuff that doesn't fit anywhere else.
- undataclass - Given a definitions of
dataclasses.dataclass, expose the generated source-code. - C vs Golang Python extension performance
- The Bas Steins newsletter - A newsletter that mentions multiple Python GitHub repositories. Like weekly "trending" for Python.
- Pandas Alternatives
Rust is now my favorite language.
Want to learn Rust? Check out these!
- Rustlings
- Rust Design Patterns - Idioms - An unofficial document describing Rust best practices and idioms.
Rusts packages.
- inline_python
- scrawl - A library that opens a user's text editor and returns the results as a string
- maturin