web-dev-qa-db-fra.com

Pipenv avec Conda?

J'utilise Anaconda pour mes virtualenvs dans la victoire 10. J'utilise git-bash. J'ai lu récemment sur pipenv et j'ai décidé de l'essayer. J'ai installé pipenv sur ma base conda python qui est une version de python 2.7 utilisant:

pip install pipenv

Je peux facilement créer un environnement python en utilisant

conda create --name py3 python=3.6

mais j'ai essayé:

$ pipenv install --three

ce qui a donné:

Warning: Python 3 was not found on your system…
You can specify specific versions of Python with:
  $ pipenv --python path\to\python
....\miniconda2\lib\site-packages\pipenv\_compat.py:86: ResourceWarning: Implicitly cleaning up <TemporaryDirectory 'c:\\users\\......\\appdata\\local\\temp\\pipenv-4_fzvq-requi
rements'>
  warnings.warn(warn_message, ResourceWarning)

Est-il possible d'utiliser les 2 packages ensemble?

11
user61629

Vous pouvez installer pipenv dans un environnement conda initialisé avec python 3.

$ conda create -n pipenv-test python=3
$ source activate pipenv-test
(pipenv-test)$ pipenv install --python=/home/.../miniconda3/envs/pipenv-test/bin/python
Creating a virtualenv for this project…
Using /home/.../miniconda3/envs/pipenv-test/bin/python (3.6.5) to create virtualenv…
⠋Already using interpreter /home/.../miniconda3/envs/pipenv-test/bin/python
Using base prefix '/home/.../miniconda3/envs/pipenv-test'
New python executable in /home/.../.local/share/virtualenvs/wispy-j1ojliDY/bin/python
Installing setuptools, pip, wheel...done.

Virtualenv location: /home/.../.local/share/virtualenvs/wispy-j1ojliDY
Creating a Pipfile for this project…
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
Updated Pipfile.lock (ca72e7)!
Installing dependencies from Pipfile.lock (ca72e7)…
  ????   ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 0/0 — 00:00:00
To activate this project's virtualenv, run the following:
 $ pipenv Shell

Cela semble fonctionner pour moi mais je ne l'ai pas testé de manière approfondie. En outre, ma condition de base python est 3,6 et j'utilise Ubuntu 16.04. Je suis curieux de savoir si cela vous pose toujours des problèmes.

9
kde8

Vous pouvez configurer Pipenv pour utiliser le répertoire exécutable Python de Python et les packages de site ( ref ).

pipenv --python=$(conda run which python) --site-packages

Vous pouvez vérifier si vous utilisez bien votre environnement Conda dans Pipenv:

pipenv run python
>>> import sys
>>> sys.executable, sys.path
# <directories under your Conda environment>

Avec NumPy installé via Conda, mais pas Pipenv, vous pouvez voir que Pipenv trouvera toujours NumPy.

conda install numpy
pipenv run python
>>> import numpy as np
>>> np.__file__
# <path under your Conda environment>

Lorsque vous installez NumPy via Pipenv, il masquera l'installation du package par Conda.

pipenv install numpy
pipenv run python
>>> import numpy as np
>>> np.__file__
# <path under your Pipenv environment>
2
anishpatel