Самая большая и / или первая проблема заключается в том, как не нарушать существующую функциональность, основанную на Python. Здесь есть два широких лагеря:
1) инструменты и другие скрипты, которые жестко кодируют местоположение исполняемого файла Python, и
2) инструменты и другие скрипты, использующие системную переменную PATH.
# 1 проще. Если вы не собираетесь удалять какие-либо версии Python, то это вообще не работа ... они будут работать. Если вы действительно хотите удалить некоторые версии Python, вам придется поработать, чтобы переключить все инструменты, основанные на тех версиях, которые вы хотите удалить, на другую версию, которая также работает для этого инструмента. Обсуждаемый путь обычно находится в строке shebang ('#! Xxx') в верхней части каждого основного двоичного файла Python, но существуют и другие способы формирования пути к двоичному файлу Python. Короче, зачем что-то удалять? Дисковое пространство дешево. Возможно, вместо этого просто убедитесь, что на эти нежелательные версии не ссылаются никакие переменные PATH.
# 2 самый сложный. Это не обязательно тот случай, когда все инструменты в этой категории используют версию Python, которую вы получаете, когда вы просто набираете «python» в командной строке для своей основной учетной записи. Могут быть другие режимы работы, которые по-разному инициализируют среду выполнения (переменную PATH), и поэтому могут работать разные версии Python, несмотря на то, что это зависит от значения PATH.
Часть # 2 обеспокоена не только ссылками на "python", но и "python2", "python3" и, возможно, другими вариантами.
Только после того, как у вас есть план действий с вышеперечисленным, чтобы вы не ломали вещи, вы можете беспокоиться о возможности избавиться от версий Python и установки новых. Надеемся, что Brew отлично справится с удалением установленных версий, поэтому, если вы сможете удалить зависимости от одной или нескольких из них, их можно легко удалить. Если у вас есть самостоятельно установленные версии Python, их также легко удалить, просто удалив ссылки на них в переменных PATH (или нет ... это не должно быть большой проблемой, если вы пропустите некоторые из них), а затем удалите установить каталог.
Затем добавляются новые версии Python. Это может повлиять только на № 2 выше. Вы должны подумать об этом и знать, какое влияние вы окажете, если новые установки установят какие-либо переменные PATH. Если он манипулирует только ПУТЬ вашего собственного пользователя или оставляет это вам, это намного проще для понимания, но любое изменение среды - это шанс сломать существующую функциональность.
Наконец, есть механизмы выбора различных версий Python для новой разработки, включая использование виртуальных сред. Это, вероятно, самая простая часть, поскольку вы можете проводить исследования, пробовать что-то и проверять, что вы можете делать все, что захотите. Эта часть проблемы является самой ограниченной.
Я ничего не знаю о Юпитере, кроме смутного знания, что это такое, поэтому я не знаю, как это все усложняет.
ОБНОВЛЕНИЕ: последнее замечание. Как вы, возможно, уже знаете, Python хорошо изолирует себя от каждой версии, сохраняя свою уникальную идентичность. Если вы используете правильные «pip» и «easy_install», которые находятся рядом с двоичным файлом «python», с которым вы собираетесь работать, вы должны четко воздействовать только на эту одну среду. Я не могу знать, что это так просто для всех версий Python, но я никогда не видел, чтобы это соглашение нарушалось версией Python, которую я использовал. Сложности здесь, конечно, связаны с тем, какие версии этих инструментов вы получаете в различных ситуациях, когда они обнаруживаются через переменную PATH.