Py2exe is een vrije uitbreiding van Python om software geschreven in Python (.py) om te zetten naar een uitvoerbaar bestand (.exe) voor Windows. Het is hierdoor mogelijk Python-software uit te voeren zonder dat Python zelf geïnstalleerd is. Py2exe is een uitbreiding van distutils waarmee men Python-software kan installeren. Py2exe is beschikbaar onder de MIT-licentie.
Werking
Py2exe gebruikt naast de broncode van het computerprogramma geschreven in Python ook de benodigde bibliotheken en construeert hieruit een.exe. Samen met enkele .dll-bestanden kan deze.exe verspreid worden. Windows-gebruikers hoeven hierdoor niet Python en andere benodigde bestanden te installeren om het computerprogramma uit te voeren. Het uitvoerbare bestand en de.dll-bestanden kunnen nu met behulp van een installatieprogramma verspreid worden.
Voorbeeld
py2exe breidt de mogelijkheden van de functie setup van distutils uit met het commando py2exe. Het Hello World-programma (hello.py) in Python kan vervolgens omgezet worden in een uitvoerbaar bestand door python setup.py py2exe uit te voeren.
hello.py:
print "Hello World"
setup.py:
from distutils.core import setup import py2exe setup(console=['hello.py'])
Geschiedenis
Py2exe werd oorspronkelijk ontwikkeld door Thomas Heller. Anno 2010 is Jimmy Retzlaff de maintainer. Py2exe ontstond om gemakkelijk Python-software te verspreiden op Windows waar Python, in tegenstelling tot besturingssystemen als Linux, niet standaard geïnstalleerd is. Projecten die gebruikmaken van py2exe zijn BitTorrent (6.0 en ouder) en SpamBayes.