首页 > 解决方案 > Pipenv 没有创建 Pipfile 也没有在正确的位置创建环境

问题描述

我正在尝试使用 pipenv 为我的 python 程序创建一个虚拟环境。我的桌面上有一个文件夹(我们称之为“项目”)cd。所以基本上我在C:\Users\my_user\Desktop\project\

我写pipenv shell,我得到:

Using C:/Python39/python.exe (3.9.0) to create virtualenv...
[   =] Creating virtual environment...created virtual environment CPython3.9.0.final.0-64 in 446ms
  creator CPython3Windows(dest=C:\Users\my_user\.virtualenvs\my_user-GweeH6qV, clear=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=C:\Users\my_user\AppData\Local\pypa\virtualenv)
    added seed packages: pip==20.2.4, setuptools==51.0.0, wheel==0.36.2
  activators BashActivator,BatchActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator

Successfully created virtual environment!
Virtualenv location: C:\Users\my_user\.virtualenvs\my_user-GweeH6qV
Launching subshell in virtual environment...
Microsoft Windows [Version 10.0.19041.746]
(c) 2020 Microsoft Corporation. All rights reserved.

(my_user-GweeH6qV) C:\Users\my_user>

基本上,它确实创建了一个虚拟环境,但我注意到我的 Pipfile 和 Pipfile.lock(以及一堆其他文件)不在我的项目目录中,而是在目录中C:\Users\my_user

为什么会这样?无论我做什么,我似乎都无法获得我的环境,并且我的 pipfiles 位于我桌面上的项目目录中。

造成这种情况的一个可能原因可能是我确实easy_install.exe pip(或类似的方式)安装了 pip,因为我在不久前遇到了问题。

以下是我尝试过的一些事情:

  1. 跑步pipenv install ________而不是pipenv shell
  2. 将项目文件夹移动到不同的文件夹(下载、文档)并pipenv shell从那里运行。
  3. 将一个文件夹放在我的项目文件夹中,然后pipenv shell从该文件夹运行。这实际上确实有效,尽管我不希望我的 pipenv 位于项目的子文件夹中,我希望它位于项目文件夹本身中。

标签: pythonpipvirtualenvpipenvpython-venv

解决方案


我通过简单地删除 Pipfile 和 Pipfile.lock 文件,C:\Users\my_user然后在我的C:\Users\my_user\Desktop\project运行中解决了这个问题pipenv install <package>

问题的原因很可能是在某些时候我可能打开了一个 pipenv C:\Users\my_user,并且由于 pipenv 不允许虚拟环境中的虚拟环境,它不会让我在里面创建一个C:\Users\my_user\Desktop\project


推荐阅读