Можно ли изящно обновить существующий virtualenv?
У меня есть virtualenv, созданный для Python 2.5, и я хочу "обновить" его до Python 2.6.
Вот как это было изначально настроено:
virtualenv --no-site-packages -p python2.5 myenv
Теперь я запускаю virtualenv в том же каталоге для обновления:
virtualenv --no-site-packages -p python2.6 myenv
...
Not overwriting existing python script myenv/bin/python (you must use myenv/bin/python2.6)
...
Overwriting myenv/bin/activate with new content
Python по умолчанию все еще 2.5, хотя я также могу указать 2.6. Есть ли какой-нибудь способ полностью удалить 2.5 и вместо него указать 'bin/python' на 2.6?
6 ответов
Вы можете использовать Python 2.6 virtualenv для "ревизии" существующего каталога. Вы должны будете переустановить все модули, которые вы установили, хотя. У меня часто есть виртуальный каталог для разработки модуля, и virtualenv один и тот же каталог со многими версиями Python, и он работает просто отлично.:)
В Python 3.3+ venv поддерживает флаг --upgrade
--upgrade Upgrade the environment directory to use this version
of Python, assuming Python has been upgraded in-place.
Применение:
python -m venv --upgrade YOUR_VENV_DIRECTORY
Я просто обновил свой venv с Python 3.7.x до 3.8 в нескольких проектах без каких-либо проблем.
Вы можете просто сделать это, перейдя в файл venv и изменив путь к python и его версию из pyvenv.cfg следующим образом:введите описание изображения здесь
Вы должны создать новый virtualenv
с помощью python2.6
а затем, после активации нового env, используйте его python2.6
И его easy_install
установить новые версии любых пакетов сайта, которые вам нужны. Остерегайтесь того, что путь к virtualenv
встроен в различные файлы среды, поэтому, когда вы будете готовы переключиться на него, измените сценарии запуска и т. д., чтобы обратиться к новым virualenv
путь или будьте очень осторожны при копировании его в старый каталог и изменении имен путей внутри него.
Установите второй Python на CentOS
- скачать питон
установить для сравнения местных
configure --prefix=/opt/virtualenv/python make && make install
создать виртуальную среду, используя новый Python
virtualenv /opt/virtualenv --python=/opt/python276/bin/python
примечание: при необходимости это может быть сделано другим пользователем
chown pyuser -R /opt/virtualenv su - pyuser source /opt/virtualenv/bin/activate python -v
Создать виртуальную среду:
virtualenv /opt/virtualenv su - infograficos source bin/activate
Установите пип с Python 2.7 (внутри virtualenv)
easy_install pip
Если вы используете OS X, попробуйте это, если вы хотите обновить Python до версии с небольшим увеличением (например, с 2.7.6 до 2.7.8), сохраняя при этом работу сторонних библиотек.
Он работает для меня в 5 различных виртуальных средах с установленным Django.