我对 pipenv 的工作原理有疑问。我的情况如下:我alembic
在 python 2.7 中安装了一个名为 的 python 包(alembic2.7
)。然后我创建了一个 python 3.7 环境。在这个环境中,我alembic
使用 Pipfile 再次安装。这alembic
是在 python 3.7 中(alembic3.7
)。
现在我的问题来了:我首先从这个 python 3.7 环境开始。然后在 shell 中pipenv shell
运行。问题是这个命令引用的是,而不是。如果我运行,它将使用。alembic xxx
alembic2.7
alembic3.7
pipenv run alembic xxx
alembic3.7
如果您不熟悉 pythonalembic
包,它是一个将 linux 命令安装到 bash 环境中的 python 包。我对这个区别感到困惑。我对 pipenv 的理解是,在 pipenv shell 中运行的所有命令都等于pipenv run command
。我能澄清一下吗?