Ich möchte offiziell Python 2-Unterstützung für ein Programm, das ich verwalte, fallen lassen und die Vorteile von Python 3-Funktionen voll ausnutzen. Anstatt ein Programm zu haben, das mehr oder weniger unter Python 2 funktioniert, aber in Eckenfällen mit merkwürdigem Verhalten versagt, möchte ich offiziell mein Programm für Python 2 mit einer klaren Fehlermeldung "Bitte benutze Python 3 statt" brechen. Was ist der vernünftigste Weg, Fehler mit nicht unterstützten Python-Versionen zu beheben?Gibt es eine Standardmethode, um alte Python-Versionen zu deklarieren?
Zum Beispiel möchte ich den Code in Python 2 importieren (mindestens das Paket der obersten Ebene), um einen Fehler auszulösen, und für mein Skript distutils setup.py beim Versuch, es für Python zu installieren oder zu erstellen 2 (auch wenn über Python 3 wie python3 setup.py sdist_dsc --with-python2
aufgerufen). Ich möchte auch alle relevanten Metadaten einschließen, um offiziell zu deklarieren, welche Python-Versionen ich unterstütze. Es gibt ein Requires-Python-Feld in PEP 345, aber das ist nicht wichtig, wenn ich distutils2 nicht verwende.
ich auch gut schlagend würde eine Art von 3to2-Übersetzung für Best-Effort Python 2 Abwärtskompatibilität, aber IIUC, das ist ein manueller Prozess und bietet keine Art von müheloser on-the-fly-Übersetzung. –