Подтвердить что ты не робот

$ PYTHONSTARTUP с python 2.7 и python 3.2

Наконец, я начал использовать python 3 вместе с python 2.7 на Linux.

Я устанавливаю свою оболочку python с помощью startup-script, определяемой $PYTHONSTARTUP. Из-за несовместимости я не могу использовать один и тот же script для обеих версий.

Каков самый простой способ получить один script для python 2.7, а другой для python 3.2?

4b9b3361

Ответ 1

Если вы используете Python 2 для некоторых проектов и Python 3 для других, измените переменную окружения при изменении проектов.

Или, ваш запуск script выглядит следующим образом:

import sys
if sys.version_info[0] == 2:
    import startup2
else:
    import startup3

и разделите реальный код запуска на startup2.py и startup3.py

Ответ 2

Установите $PYTHONSTARTUP для указания на script, как это, где проверяется используемая версия Python, а затем делегируется другому запуску script:

import sys
if sys.version_info[0]==2:
    from startup2k import *
elif sys.version_info[0]==3:
    from startup3k import *
else:
    # logging.warn('Unsupported version of Python')
    pass

Ответ 3

Определите псевдоним для одной из версий python. В псевдониме reset PYTHONSTARTUP в соответствии с этой версией python:

alias py3='PYTHONSTARTUP=/path/to/startup.py /other/path/to/python3.2'