Python
Algorithms
Basic Grammar
Code Quality
- Pylint - code analysis for Python | www.pylint.org (Documentation, Github, PyPI)
- mypy - Optional Static Typing for Python (Documentation, Github, PyPI)
- radon · PyPI (Documentation, Github)
Code Style
Data Handling
- NumPy (Documentation, Github, PyPI)
- pandas - Python Data Analysis Library (Documentation, Github, PyPI)
- xarray: N-D labeled arrays and datasets in Python — xarray documentation (Github, PyPI)
Data Structure
Debugging
- Debugging and Profiling — Python 3 documentation
- GDB: The GNU Project Debugger
- Jupyter and the future of IPython — IPython
- Project Jupyter | Home
- gotcha/ipdb: Integration of IPython pdb (PyPI)
- pdb — The Python Debugger — Python 3 documentation
Profiling
- Debugging and Profiling — Python 3.9.0 documentation
- The Python Profilers — Python 3.9.0 documentation
- ionelmc/pytest-benchmark: py.test fixture for benchmarking code
- python/pyperformance: Python Performance Benchmark Suite
- pythonprofilers/memory_profiler: Monitor Memory usage of Python code
- pympler/pympler: Development tool to measure, monitor and analyze the memory behavior of Python objects in a running Python application.
- Python Object Graphs — objgraph 3.5.0 documentation
- zhuyifei1999/guppy3: guppy / heapy ported to Python3. It works for real!
Design Pattern
Exception Handling
Functional Programming
- functools — Higher-order functions and operations on callable objects — Python 3 documentation
- itertools — Functions creating iterators for efficient looping — Python 3 documentation
- operator — Standard operators as functions — Python 3 documentation
- Functional Programming HOWTO — Python 3 documentation
Articles
- Functional programming in Python – Build Smart. Build Secure. IBM Developer
- Functional programming in Python, Part 2 – Build Smart. Build Secure. IBM Developer
- Functional programming in Python, Part 3 – Build Smart. Build Secure. IBM Developer
3rd Parties
- tkem/cachetools: Extensible memoizing collections and decorators (Documentation, PyPI)
- pytoolz/toolz: A functional standard library for Python.
- pytoolz/cytoolz: Cython implementation of Toolz: High performance functional utilities
- more-itertools/more-itertools: More routines for operating on iterables, beyond itertools
Misc
High Performance
- Debugging and Profiling — Python 3 documentation
- The Python Profilers — Python 3 documentation
- Cython: C-Extensions for Python
- Numba: A High Performance Python Compiler
Library
- The Python Standard Library — Python 3 documentation
- The Python 3 Standard Library by Example – Doug Hellmann
Machine Learning
Packaging
Object-Oriented Programming
Testing
- unittest — Unit testing framework — Python 3 documentation
- pytest: helps you write better programs — pytest documentation
- Welcome to the tox automation project — tox documentation
- nedbat/coveragepy: Code coverage measurement for Python