[[Vorlage(Baustelle, 3.1.2018, noisefloor)]] [[Vorlage(Getestet, xenial)]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Terminal: Ein Terminal öffnen] [:Packprogramme: Archive entpacken] }}} [[Inhaltsverzeichnis()]] [[Bild(pypy-logo.png, 72, align=left)]] [https://pypy.org/index.html PyPy] {en} ist eine Implementierung der Programmiersprache [:Python:], welche möglichst vollständig kompatibel zur Referenzimplementierung CPython sein will. Im Gegensatz zu CPython nutzt PyPy einen [wikipedia:Just-in-time-Kompilierung:Just-in-Time Compiler], so dass besonders rechnenintensiver und länger laufender Python-Code (deutlich) schneller ausgeführt wird. Weitere Information hierzu sind auf der [https://pypy.org/features.html Webseite] {en} von PyPy zu finden. = Installation = PyPy und das "normale" Python (also die CPython-Implementierung) können problemlos parallel installiert werden. == aus den Paketquellen == PyPy ist in den offiziellen Paketquellen enthalten - allerdings nur für Python 2.7, nicht für Python 3.x. Das Paket kann wie folgt installiert werden: {{{#!vorlage Paketinstallation pypy, universe }}} Die Version aus dem Paketquellen ist aber nicht die aktuellste Version. Dies bietet in der Regel aber eine bessere Kompatibilität mit der Referenzimplemtierung. Außerdem stehen beim manuellen Download Version für 64bit und 32bit Prozessoren zur Verfügung. == manuell == Wer PyPy in einer aktuellen Version benötigt bzw. PyPy für Python 3 Code nutzen möchte, der kann PyPy manuell installieren. Dazu reicht es, wenn man von der [https://pypy.org/download.html Downloadseite des Projekts] {en} die gepackte Datei für Python 2.7 oder Python 3.x und die passenden Prozessorarchitektur herunterlädt und in ein beliebiges Verzeichnis (wie z.B. das [:Homeverzeichnis:] oder [:/opt:]) entpackt = Nutzung = PyPy wird genau wie Python genutzt, nur das man ein Python-Skript nicht mit dem Befehl `python3` bzw. `python` für Python 2.7 aufruft, sondern `pypy3` bzw. `pypy` nutzt. Wenn PyPy manuell installiert wurde, muss man gegebenenfalls noch den Pfad zur Installation mit angeben. So würde z.B. der Befehl[2]: {{{#!vorlage Befehl /home/BENUTZER/pypy3_install/bin/pypy3 mein_skript.py }}} das Skript '''mein_skript.py''' mit PyPy für Python 3.x starten, welches im Verzeichnis '''/home/BENUTZER/pypy3_install/bin/''' installiert ist. PyPy kennt eine ganze Reihe von Optionen, die man aber eher selten braucht. Die komplette Liste der Optionen erhält man beim Aufruf von {{{#!vorlage Befehl pypy3 --help #für Python 3.x pypy --help #für Python 2.7 }}} == Einschränkungen == = Links = * [http://doc.pypy.org/en/latest/cpython_differences.html technische Unterschiede] {en} von PyPy und CPython ##tag: Programmierung, Python