Hello_world
Фев. 19, 2013 20:33:06
Приветствую.
Возникли сложности с использованием virtualenv - не понимаю как пользоваться окружением: создаю с опцией –no-site-packages, активирую, вызываю необходимый мне скрипт и он не выдает никаких ошибок(а должен, т.к не хватает модулей) - т.е используется стандартный питон, а не питон из окружения.
Что я делаю не так и как мне использовать питон из окружения?
Гуглом пользовался, здешним поиском тоже, работаю на windows.
Спасибо за помощь.
reclosedev
Фев. 19, 2013 21:06:50
Похоже, что вызываете
Вместо
Если нет, покажите что набираете в командной строке. И что выдаст
import sys
print(sys.executable)
plusplus
Фев. 20, 2013 08:45:11
Hello_world
создаю с опцией –no-site-packages
Она по дефолту, можно не пользоваться.
Hello_world
активирую, вызываю необходимый мне скрипт и он не выдает никаких ошибок(а должен, т.к не хватает модулей) - т.е используется стандартный питон, а не питон из окружения. Что я делаю не так и как мне использовать питон из окружения?Гуглом пользовался, здешним поиском тоже, работаю на windows.Спасибо за помощь.
Просмотреть модули можно с помощью команды pip freeze и сравнить(у окружения и главного интерпретатора), если набор одинаковый, значит действительно venv как-то неправильно работает, если разные, значит скрипт как-то не так запускаешь.
Hello_world
Фев. 20, 2013 21:08:31
reclosedev, верно, вызывал просто script.py. Вызвал как python script.py - запустилось через venv. Спасибо!
plusplus, ну да, pip freeze верно выдает пустой список.
Однако в связи с этим появляется другая проблемка: если вызывать скрипт python script.py и этот скрипт находится в другой папке, то питон выдает ошибку, мол не может найти файл. Если вызываю просто как script.py - вызывается стандартный питон. Путь к папке в которой лежит скрипт находится в Path.
Добавил в файл activate: export PYTHONPATH=“/the/path/you/want”
Но ошибка не исчезла.
В принципе это все я могу легко решить - активировать lenv и перейти в нужную папку, но мало-ли есть более удобный способ.
plusplus
Фев. 21, 2013 05:24:14
Hello_world
reclosedev, верно, вызывал просто script.py. Вызвал как python script.py - запустилось через venv. Спасибо!plusplus, ну да, pip freeze верно выдает пустой список. Однако в связи с этим появляется другая проблемка: если вызывать скрипт python script.py и этот скрипт находится в другой папке, то питон выдает ошибку, мол не может найти файл.
Ну дак, как по-другому, откуда питон может угадать, какой ты скрипт хочешь запустить без указания пути до него хотя бы относительного.
Hello_world
Если вызываю просто как script.py - вызывается стандартный питон. Путь к папке в которой лежит скрипт находится в Path.Добавил в файл activate: export PYTHONPATH=“/the/path/you/want”Но ошибка не исчезла.В принципе это все я могу легко решить - активировать lenv и перейти в нужную папку, но мало-ли есть более удобный способ.
ОС какая, Windows? У меня под Linux работает просто script.py