Запуск Python3 на общем компьютере с Python2? Установка и запуск конфликтов, возврат к библиотекам Py2

Declan спросил: 07 октября 2018 в 11:10 в: python

Итак, я написал несколько скриптов Python3, которые я хочу запускать на общем рабочем компьютере. На этом компьютере установлен python2.7 и много запланированных 2.7 скриптов, и я должен убедиться, что они остаются нетронутыми. Поэтому я подумал, что это некая переносимая или виртуальная среда Python3, которую я мог бы сохранить только для своих сценариев.

Если бы были изменения в том, что я пробовал, или новый способ, который я не учел, это было бы очень признателен. Также извините за длинный пост, хотел быть конкретным.


Что я пробовал:

1) Установка переносной версии python3 (WinPython 3.7).

Затем в файле .bat для запуска моего сценария я поместил:

SET PYTHONPATH = "C:\Localdata\...\WPy-3702\python-3.7.0.amd64\Lib\site-packages"
"C:\Localdata\...\WPy-3702\python-3.7.0.amd64\python.exe" test.py

Где test.py - это просто:

import six
print(six.__file__)

Теперь это прекрасно работает на моем ноутбуке, возвращая каталог пакета пакета winpython:

> C:\Localdata\...\WPy-3702\python-3.7.0.amd64\Lib\site-packages\six.py

Однако, с При всем вышеприведенном равенстве общий компьютер возвращается к установленной библиотеке 2.7.

> C:\Program Files (x86)\Python27\lib\site-packages\six.py

Это, конечно, нарушает его и, по-видимому, является корнем моей проблемы. Я проверил, и есть шесть.py в папке site-пакетов winpython. Я пробовал разные версии / установки winpython без удачи. (В идеале, если бы кто-то указал на простую команду, которую я здесь упускаю, которая могла бы это исправить, это было бы здорово.)

К вашему сведению, если я запускаю python из "WinPython Command Prompt.exe", который поставляется в комплекте, он действительно является версией 3.7, просто она не будет использовать локальные библиотеки пакетов сайтов 3.7 ...

2) Установка Anaconda3 и не добавление в PATH.

Установка завершена, но у меня остается только приглашение Anaconda в меню "Пуск" (без jupyter, spyder и т. д.) и сообщение об ошибке Anaconda, как только я пытаюсь открыть его:

> 'C:\Users\...\anaconda3\Scripts\activate.bat' is not recognized as an 
internal or external command, operable program or batch file.

У меня есть опыт решения этой проблемы на других рабочих ПК, и решение состоит в том, чтобы удалить Python по умолчанию и переустановить Anaconda, но, как я уже говорил, я не могу коснуться текущей установки Py2, не раздражая МНОГО людей. так что еще один тупик.

(Хотя установка каким-то образом не справляется, файлы anaconda3 все еще установлены, поэтому я попробовал тот же трюк test.py + batchfile для пакетов сайта anaconda3, но он делает то же самое ).

3) Создание Ve nv:

Хорошо, я признаю, что я немного наивен, если прочитаю это: Почему virtualenv полагается на глобальный питон, а не на локальный? после извлечения? похоже у меня будут те же проблемы, что и выше.

Из моего предыдущего поста Как локально запускать скрипт python в виртуальной среда на чьей-либо машине с Windows, и она постоянно работает? Ответ на использование pyinstaller полезен для однократного использования, но у меня много сценариев, которые я сейчас хочу запустить на том же компьютере, поэтому пакет объемом 500 МБ + на сценарий было бы слишком громоздко.

0 ответов