Outline of the Python programming language
In-game article clicks load inline without leaving the challenge.
The following outline is provided as an overview of and topical guide to Python:
Python is a general-purpose, interpreted, object-oriented, multi-paradigm, and dynamically typed programming language known for its emphasis on code readability
and broad standard library. Python was created by Guido van Rossum and first released in 1991. It emphasizes code readability and developer productivity.
What type of language is Python?
- Programming language — artificial language designed to communicate instructions to a machine.
- Object-oriented programming — built primarily around objects and classes.
- Functional programming — supports functions as first-class objects.
- Scripting language — often used for automation and small programs.
- General-purpose programming language — designed for a wide variety of application domains.
- Dynamically typed — type checking occurs at runtime.
- Interpreted language — code is executed by an interpreter.
- Multi-paradigm — supports procedural, object-oriented, and functional programming.
History of Python
- ABC (programming language) – precursor to Python
- Python was started by Guido van Rossum in 1989 and first released in 1991.
- Python 2 — major version released in 2000, officially retired in 2020.
- Python 3 — released in 2008
General Python concepts
- Classes
- Comments and docstrings
- Context manager
- Data types
- Decorators
- Exceptions
- Functions
- Garbage collection
- Generators
- Indentation
- Interpreter
- Iterators
- Literals
- Modules and import statements
- Objects
- Operators in Python
- Package management (pip)
- Python standard library
- Variables and strings
Issues and limitations
- Performance — generally slower than many compiled languages such as C or Java can be mitigated by C extensions or JIT compilers (PyPy).
- Global interpreter lock — limits parallel CPU-bound threads in CPython
- Memory consumption — high memory use compared to some lower-level languages
- Version compatibility — Python 2 vs Python 3 differences caused migration issues
Python implementations
- CPython — reference implementation in C
- IronPython — Python for .NET
- Jython — Python for the JVM
- MicroPython — Python for microcontrollers and embedded systems
- Nuitka — compiler that packages user code with CPython into a static binary
- PyPy — JIT-compiled Python interpreter for speed
- PythonAnywhere — freemium hosted Python installation that runs in the browser
- Stackless Python — Python with lightweight concurrency features
Python toolchain

- List of Python software
- Comparison of Python IDEs
- Comparison of server-side web frameworks for Python
- List of Python frameworks
- List of Python libraries
- List of unit testing frameworks for Python
- Python Package Index
Notable projects using Python
- YouTube (backend)
- Instagram (backend)
- Dropbox
- OpenStack
- Blender (scripting and plugins)
- SageMath
- NumPy
- Pandas
- TensorFlow
Python development communities
- ActiveState — commercial Python distributions and support
- Anaconda, Inc. — Python data science ecosystem
- GitHub
- Python Software Foundation
- Python Package Index (PyPI) — third-party software repository for Python
Example source code
- Articles with example Python code
Python publications
Books about Python
- Automate the Boring Stuff with Python – Creative Commons Python book
- Alex Martelli — Python in a Nutshell and Python Cookbook
- Mark Pilgrim – Dive into Python
- Naomi Ceder — The Quick Python Book
- Wes McKinney — Python for Data Analysis
- Zed Shaw – Learn Python the Hard Way
Textbooks
Python programmers
- David M. Beazley
- Naomi Ceder
- John D. Hunter
- Glyph Lefkowitz
- Alex Martelli
- Wes McKinney
- Peter Norvig
- Travis Oliphant
- Fernando Pérez
- Tim Peters
- Mark Pilgrim
- Allison Randal
- Armin Ronacher
- Guido van Rossum
- Grant Sanderson
- Greg Stein
Python conferences
- EuroPython – annual Python conference in Europe
- PyCon – the largest annual convention for the Python community
- PyData – conference series focused on data analysis, machine learning, and scientific computing with Python
- SciPy Conferences – focused on the use of Python in scientific computing and research
- DjangoCon – a conference dedicated to the Django web framework
- PyOhio – a free regional Python conference held in Ohio
Python learning resources
- Codecademy –
- – tutorials, coding examples, and interactive programming for Python concepts and data structures.
- Kaggle – free Python courses focused on data science and machine learning.
- – the official Python tutorial from the Python Software Foundation.
- – articles, tutorials, and courses for Python developers.
- W3Schools – beginner-friendly .
- Wikibooks Python Programming – free open-content textbook on Python.
Competitive programming
- Codeforces – an online platform for programming contests that supports Python submissions
- Codewars – gamified coding challenges supporting Python
- HackerRank – competitive programming and interview preparation site with Python challenges
- Kaggle – while focused on data science competitions, it also includes Python-based problem solving.
- LeetCode – online judge and problem-solving platform where Python is widely used
See also
- Outline of computer programming
- Outline of software
- Outline of software engineering
- List of programmers
Outlines of other programming languages
- Outline of the C programming language
- Outline of the C sharp programming language
- Outline of the C++ programming language
- Outline of the Java programming language
- Outline of the JavaScript programming language
- Outline of the Perl programming language
- Outline of the Rust programming language