Ответ 1
Вы можете использовать python_implementation
из модуля platform
в Python 3 или Python 2. Это возвращает строку, которая идентифицирует реализацию Python.
например.
return_implementation.py
import platform
print(platform.python_implementation())
и повторение нескольких ответов в командной строке:
$ for i in python python3 pypy pypy3; do echo -n "implementation $i: "; $i return_implementation.py; done
implementation python: CPython
implementation python3: CPython
implementation pypy: PyPy
implementation pypy3: PyPy
Обратите внимание, что с этой датой ответа возможные ответы: "CPython", "IronPython", "Jython", "PyPy", что означает, что ваша реализация не будет возвращена этой функцией python_implementation
, если она а не идентичность модуля sys
как один из этих типов.
python_implementation
вызывает sys.version
под капотом и пытается сопоставить ответ с шаблоном регулярного выражения - если нет условного соответствия, нет соответствующего строкового ответа.