pipenv: создать среду и установить программно

Я хотел бы создать виртуальную среду и установить скрипт из скрипта Python. Есть ли способ сделать это? Похожий на

import pip
pip.main(['install', 'django'])

person lmr2391    schedule 07.08.2018    source источник
comment
Надеюсь, этот пост поможет вам stackoverflow.com/questions/12966147/   -  person Yurii Kramarenko    schedule 07.08.2018


Ответы (2)


Вы можете создать файл с именем «requirements.txt», в котором вы пишете все библиотеки, которые хотите установить.

требования.txt:

django

теперь создайте файл python для своего скрипта example.py:

import os

if __name__ == "__main__":

    name_env = 'my_env'

    create_virtual_env = 'python3 -m venv {}'.format(name_env)
    activate_virtual_env = 'source {}/bin/activate'.format(name_env)
    update_pip = 'curl https://bootstrap.pypa.io/get-pip.py | python'
    instal_required_libraries = 'pip3 install -r ./requirements.txt'

    command = '{} && {} && {} && {}'.format(create_virtual_env, activate_virtual_env, update_pip, instal_required_libraries)
    os.system(command)

вам нужно использовать && для разделения вашей команды, чтобы дождаться окончания предыдущей команды

наконец, вы можете запустить свой скрипт:

python3 example.py

Я надеюсь, что это поможет вам

person Diane Delallée    schedule 07.08.2018
comment
Эй, Диана! Спасибо за Ваш ответ. Но я просил решение сделать это, используя pipenv вместо pip. Безусловно, подобный подход привел бы к успеху. Но было бы лучше сделать это, вызвав код python напрямую, вместо того, чтобы использовать python для создания кода командной строки. - person lmr2391; 09.08.2018

Pipenv теперь является официальным менеджером пакетов для Python. Вы можете использовать pipenvlib. Эта библиотека позволяет легко программно взаимодействовать с проектами Pipenv, анализировать их и манипулировать ими. Он также позволяет вам изучать зависимости и требования проекта, а также устанавливать/удалять пакеты напрямую из Python.

person Ahmed At Techiediaries    schedule 27.08.2018