Виртуальная активация на windows

Я установил virtualenv 1.10 на компьютере с Windows 7 с Python 2.7 на нем.

Я создал виртуальную среду под названием TESTENV. Он расположен в C:\

Если я бегу C:\TESTENV\Scripts\activate а затем введите python с последующим:

import sys
print sys.prefix

это выводит C:\TESTENV, как выяснилось.

Но если я бегу D:\virtualenv_test.py (это скрипт, содержащий две строки кода, которые я использовал выше), он выводит C:\Python27,

Я попытался добавить строку сценария к сценарию, но это не работает в Windows.

Почему скрипт не работает в контексте виртуальной среды?

1 ответ

Решение

virtualenv не меняет приложение по умолчанию, которое запускает файл.

Когда вы установили Python, установка связана с .py а также .pyw файлы с соответствующими C:\Python27\python.exe а также C:\Python27\pythonw.exe Приложения. Поэтому, когда вы запускаете (в вашем cmd) только D:\virtualenv_test.py, cmd смотрит в реестр и находит приложение, которое связано с .py файлы, а затем запускает файл с этим приложением. В этом случае это ранее установленный C:\Python27\python.exe,

virtualenvactivate добавляет только тот конкретный виртуальный окружение интерпретатора Python в начале PATH переменная окружения, поэтому при вводе python в cmd вы получите соответствующий python.exe казнены.

Таким образом, решение вашей проблемы - запустить ваш скрипт как:

python D:\virtualenv_test.py

После того, как вы активировали среду.

Другие вопросы по тегам