Python
Python is a high-level, general-purpose programming language. Its design philosophy emphasizes code readability with the use of significant indentation. (presentation on Wikipedia)Official website: (Python Infrastructure Status)
Implementations
- CPython (Python): the reference implementation
- PyPy: fast alternative implementation with JIT (PyPy’s Python packages compatibility)
- portable-pypy: Portable 32 and 64 bit x86 PyPy binaries for many Linux distributions.
- IronPython: implementation for .Net / Mono plateform
- Jython: implementation for Java virtual machine
- MicroPython: implementation for microcontrollers
- RustPython: Online Demo
- codon: Python compiler
- LPython: online High performance typed Python compiler
- Nuitka: Python compiler
- Py-backwards: Online Demo
- pyston: implementation with JIT
- Skulpt: implementation in JavaScript; CodeSkulptor2, CodeSkulptor3
Documentations
-
Forum
Discussions on Python.org
(profile OPi)
- Bug in int('+␣42')? (April 30, 2023)
- GitHub repository: Issues
- PEPs: Python Enhancement Proposals:
- Python 3 Documentation:
- Python Developer’s Guide: Status of Python Versions;
- The Python Wiki (profile Olivier Pirson):
- Anti-Patterns in Python Programming (Constantine Lignos)
- Apprendre à programmer avec Python 3 (Gérard Swinnen)
- Beej’s Guides: Guide to Python Programming (single page, widescreen) (Brian “Beej Jorgensen” Hall)
- Cheat Sheet Python; OverAPI.com Python
- Cours vidéo Python pour débutants
- Dive Into Python 3 (Mark Pilgrim)
- Docstring – Formations Python (Thibault Houdon)
- FAQ Python (Developpez.com)
- Google Python Style Guide
- Hidden features of Python (Stack Overflow)
- How to Think Like a Computer Scientist: Learning with Python (Peter Wentworth, Jeffrey Elkner, Allen B. Downey, Chris Meyers) du site Open Book Project
- Learn python in Y Minutes, Learn Python 2 (legacy) in Y Minutes, Learn Statistical Computing with Python in Y Minutes
- Mémento Python 3 (Laurent Pointal)
- Online Python; Online Python Tutor: Online Python compiler and debugger, Python Tutor code visualizer
- PyDoc.net
- Python Introduction, What is Python, What can you do with Python (jobtensor): Python, NumPy, Pandas, SciPy
- Python Quick Reference
- Sam & Max: Les articles pour apprendre Python, dans le bon ordre :-)
- Scripting Languages I: Node.js, Python, PHP, Ruby (Hyperpolyglot)
- Supporting Python 3: An in-depth guide (Lennart Regebro); The key differences between Python 2.7.x and Python 3.x with examples (Sebastian Raschka)
- The Hitchhiker’s Guide to Python! / Le guide de l’auto-stoppeur pour Python !
- The Mouse Vs. The Python: PyPDF
-
Tk interface:
- An Introduction to Tkinter (Fredrik Lundh on effbot.org
- Documentation de tkinter (Étienne Florent)
- TkDocs – Information you need to build high-quality Tk user interfaces
- Tkinter 8.5 reference: a GUI for Python (John W. Shipman, New Mexico Tech)
Packages / Modules
- pip – The Python Package Installer
- PyPI (profile OPi): Python Package Index; PyPI Data
- TestPyPI (profile OPi)
- Python Readiness – Python support table for most popular Python packages
- Unofficial Windows Binaries for Python Extension Packages (Christoph Gohlke)
- Python – arithmetic operations and surroundings
- python3-example-pkg – small example of Python 3 package
- severalgos – some algorithms implemented in Python
- SimpleGUICS2Pygame – primarily a reimplemention of the particular module SimpleGUI of CodeSkulptor3
- audioread; LibROSA – audio and music processing in Python: documentation; Nava
- Awesome Python; best-of
- Beautiful Soup – HTML/XML parser: Documentation
- GMPY: binding to GMP (The GNU Multiple Precision Arithmetic Library)
- gTTS – Google Text-to-Speech: Documentation
- matplotlib: python plotting
- mpmath – library for real and complex floating-point arithmetic with arbitrary precision: Documentation
- NetworkX: Documentation: Index, Module Index
- Numba – JIT compiler that translates a subset of Python and NumPy code into fast machine code
- NumPy; CuPy: NumPy-compatible array library accelerated by CUDA; Numerical Analysis & Statistics: MATLAB, R, NumPy, Julia (Hyperpolyglot)
- opencv-python; OpenCV-Python Tutorials’s documentation; OpenCV – Open Source Computer Vision Library
- py2exe: converts Python scripts into executable Windows programs
- Pillow: documentation (fork of PIL – Python Imaging Library)
- Pygame: library built on the C library SDL: documentation
- PyOpenCL (Andreas Klöckner’s web page); PyOpenCL’s documentation; OpenCL
- PyPDF2; Documentation
- pyppeteer: documentation; Puppeteer
- selenium: API; SeleniumHQ;
- PySnooper – Never use print for debugging again
- pytest
- python-bibtexparser: documentation
- PyVirtualDisplay
- Requests – HTTP for Humans; cloudscraper
- rpy2 – R in Python
-
see:
alternative to the fonction
dir
- SymPy; Computer Algebra I: Mathematica, SymPy, Sage, Maxima (Hyperpolyglot)
- wxPython: binding to wxWidgets
Programmes
- IPython – Interactive Computing
- Jupyter: documentation
- py2puml – Python to PlantUML; UML
- pychrysanthemum – A visual/interactive Python disassembler
- pydeps – Python Module Dependency graphs
- Pyreverse – UML diagram generator, integrated to pylint
- py-spy – Sampling profiler for Python programs
- Sphinx – Python Documentation Generator: Documentation; reStructuredText (RST, reST)
-
Static analysis:
- Black – The uncompromising code formatter: documentation
- pydocstyle: Error Codes
- pycodestyle (formerly called pep8) – Python style guide checker: documentation / Errors codes; Pyflakes; Pylint (pylint-errors)
- mypy: documentation; Pyre; pytype
- Ruff – An extremely fast Python linter, written in Rust (Astral)
- pycodestyle (pep8):
# noqa
- Pylint:
# pylint: disable=…
- mypy, pytype:
# type: ignore
- Pyre:
# pyre-ignore[…]
Miscellaneous
- afpy – Association Francophone Python
- CheckiO – coding games and programming challenges for beginner and advanced
- divisions – round of 0.5 and Euclidean division comparisons between some programming languages
- Faster CPython (Victor Stinner)
- FOSDEM Python devroom (video recordings): 2023, 2022, 2021, 2020, 2019, 2018, 2017, 2016, 2015, 2014, 2013, 2007; FOSDEM
- Guido van Rossum
- hellanguages – some tests/examples/templates in various languages
- « Je n’imaginais pas que Python connaîtrait un tel succès » — Entretien avec Guido van Rossum, le créateur du langage informatique le plus utilisé dans les domaines de pointe (Le Monde, Damien Leloup, 25 juillet 2018)
- Moving to require Python 3; Python 2.7 Countdown; [Python-Dev] [RELEASE] Python 2.7.18, the end of an era (Benjamin Peterson, 20 avril 2020)
- Perceiving Python programming paradigms (Jigyasa Grover, 18 octobre 2019)
-
PHP:
- HippyVM — an implementation of the PHP language using PyPy technology
- Interpreted Languages: JavaScript, PHP, Python, Ruby (Sheet One), (Sheet Two) (Hyperpolyglot)
- Python est l’avenir de PHP ? (Stéphane Planquart, PHP Solutions n° 3 mars 2011, p.13–18)
- polyturtle (Olivier Pirson): utilisation de la tortue graphique en Python, avec une version en PostScript, et un exemple Graphviz à partir de Python.
- PYnative: Python Quizzes;
- Real Python: Python Quizzes
- Python.be
- Python Forum (profile OPi)
- python-mode for Emacs editor
- Read the Docs (profile OPi)
- Podcast.__init__ – The Podcast About Python and the People Who Make It Great;
- Python Bytes Podcast;
- Talk Python To Me – A podcast on Python and related technologies
- Why Python? (Eric Raymond)/ Débutants: pourquoi le langage Python ? – […] an amazing testament to Python’s clarity and elegance of design.
Mojo 🔥
– combines the usability of Python with the performance of C, unlocking unparalleled programmability of AI hardware and extensibility of AI models.- Docs: roadmap & sharp edges
- Mojo may be the biggest programming language advance in decades (fast.ai, May 4, 2023)
Obsolete
- Python bug tracker (profile OPi)