标签: python-venv

安装在Windows 3上的Python 3中的pyvenv脚本在哪里?

阅读PEP 405中的以下声明后

还提供了pyvenv安装的脚本,以使这更方便:

pyvenv /path/to/new/virtual/environment

我试图创建一个新的虚拟环境并且失败了;

C:\>python --version
Python 3.3.1
C:\>pyvenv myvenv
'pyvenv' is not recognized as an internal or external command,
operable program or batch file.
Run Code Online (Sandbox Code Playgroud)

显然,pyvenv脚本未安装到Scripts通常添加到PATH环境变量的文件夹中,因此可以在命令行上轻松运行此类脚本.

PEP 405是错误的,是否在Python 3.3中没有正确实现,或者我错过了什么?

python windows virtualenv python-3.x python-venv

9
推荐指数
1
解决办法
5393
查看次数

python 3.x venv环境是否可重定位?

从python 3.3开始,stdlib具有用于创建虚拟环境的venv模块.python 3.x venv环境是否可重定位?

python python-3.x python-venv

9
推荐指数
1
解决办法
1082
查看次数

如何让"python -m venv"直接安装最新的pip版本

作为新python版本的编译步骤的一部分,我获取并运行get-pip.py,以便在python可执行文件旁边安装最新的pip:

$ /opt/python/3.7.0/bin/python --version
Python 3.7.0
$ /opt/python/3.7.0/bin/pip --version
pip 18.0 from /opt/python/3.7.0/lib/python3.7/site-packages/pip (python 3.7)
Run Code Online (Sandbox Code Playgroud)

我有25个这样的版本/opt/python,虽然我主要使用每个major.minor版本不是EOL的五个最新版本.要设置我曾经运行过的invorment,virtualenv或者我virtualenvutils可以-p /opt/python/X.Y.Z/bin/python选择获取具有特定版本的虚拟环境.

使用Python 3.7,这给出了imp模块弃用警告:

$ virtualenv -p /opt/python/3.7.0/bin/python /tmp/py37virtualenv
Running virtualenv with interpreter /opt/python/3.7.0/bin/python
Using base prefix '/opt/python/3.7.0'
/opt/util/virtualenvutils/lib/python3.6/site-packages/virtualenv.py:1041: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
  import imp
New python executable in /tmp/py37virtualenv/bin/python
Installing setuptools, pip, wheel...done.
Run Code Online (Sandbox Code Playgroud)

我很少希望这将在virtualenv中得到解决,因为PendingDeprecationWarning至少自2014年以来(从这个问题的输出中可以看出)

在调查用in 替换virtualenv …

python pip virtualenv python-venv

9
推荐指数
2
解决办法
1720
查看次数

ImportError:没有名为 can 的模块,但根据 pip list 它在那里

我在 python 中遇到错误:

ImportError: No module named can
Run Code Online (Sandbox Code Playgroud)

但奇怪的是,当我在环境中使用 pip list 检查时,所有这些库都已安装:

截屏

正如您在屏幕截图中看到的,它告诉我can找不到该库,但是当我使用 pip list 检查它时

python pip python-3.x python-venv

9
推荐指数
1
解决办法
5137
查看次数

如何让我的 vscode 终端使用我的 venv for python 而不是系统版本?

我已经设置了一个 venv using python -m venv venv,它被 vscode 识别为有效的解释器,并使用代码运行器 vscode 扩展按预期运行我的代码。但vscode集成的bash终端仅使用系统版本的python,即使运行后也是如此source /Fake/path/to/env/bin/activate。终端显示(env)在输入提示符上,但通过检查版本os.path.dirname(sys.executable)显示 python 的版本是我的系统路径中的版本,而不是 venv 中的版本。所以我正在安装的包被安装到系统 python 而不是 venv。

这是 vscode 中终端的问题,而不是 venv 本身的问题,因为当我在本机终端(非集成)中按照上述步骤操作时,我得到了 venv python 的正确路径。

我尝试将python.venvPathvscode 中的变量设置为${workspaceFolder}/envor tofake/path/to/env但都不起作用。我认为可能可以在该terminal.integrated.shellArgs.macos设置下设置 bash shell 参数,但无法弄清楚如何让它在启动时运行正确的激活脚本。作为参考,我当前的 vscode 设置如下:

"settings": {
    "code-runner.fileDirectoryAsCwd": true;
    "code-runner.executorMap": {
        "python": "env/bin/python3",
    },
    "python.venvPath": "${workspaceFolder}/env",
    "terminal.integrated.cwd": "${workspaceFolder}",
    },
}
Run Code Online (Sandbox Code Playgroud)

基本上,我期望集成终端激活 venv activate bash 脚本并临时替换路径以获取我的 venv python 作为默认值。然后我就可以使用 pip3 将相关包安装到 venv 而不是系统 python 中。但是,尽管在条目之前显示提示,但实际行为是在发出命令(例如或 ) …

python macos python-venv visual-studio-code

9
推荐指数
2
解决办法
2万
查看次数

为项目选择的 Python 解释器无效

我使用 Pycharm,每当我将项目移动到另一个文件夹时,它都会显示“为该项目选择的 python 解释器无效”。我认为发生这种情况是因为 venv 的路径已经改变。

我尝试配置 Python 解释器 > 添加解释器 > 选择“现有环境”以及 venv 的新路径。我原以为这会起作用,但在我单击“确定”后,它暂时显示“正在更新解释器路径”,但没有任何变化。我什至尝试检查“对所有项目可用”。

我还尝试了一些堆栈溢出答案,但无法成功。我怎样才能解决这个问题?

Error:Cannot run program "C:\Users\aksha\Pycharm\Digital Clock\venv\Scripts\python.exe" (in directory "C:\Users\aksha\Pycharm\60 Python Projects\Digital Clock"): CreateProcess error=2, The system cannot find the file specified
Run Code Online (Sandbox Code Playgroud)

python interpreter pycharm python-venv

9
推荐指数
1
解决办法
5万
查看次数

如何在Ubuntu上使用Python3.10?

我已经deadsnakes在我的 Ubuntu 20.04 机器上安装了 Python 3.10。

如何使用它?python3 --version返回Python 3.8.10python3.10 -m venv venv返回错误(我python3-venv也安装了)。

python ubuntu python-3.x python-venv

9
推荐指数
2
解决办法
2万
查看次数

同时激活venv和conda环境

我是一个初学者,正在“玩弄”环境。我遇到了一种情况,似乎我激活了两个环境:我创建一个目录,使用 venv 创建一个环境,激活它,然后 conda 激活我之前创建的 conda 环境。这些是命令:

mkdir dummie_directory
cd dummie_directory
python -m venv .
Scripts\activate
conda activate old_env
Run Code Online (Sandbox Code Playgroud)

之后我的命令行的开头如下所示:

(old_env)(dummie_directory) C:\Users\....
Run Code Online (Sandbox Code Playgroud)

这是否意味着两个环境都处于活动状态?是否有任何预期用途,或者它很可能会导致已安装的软件包之间发生某种冲突/冲突?

谢谢

python environment python-venv conda virtual-environment

9
推荐指数
1
解决办法
1808
查看次数

zsh:未找到匹配项 - 尝试安装 pydantic[电子邮件]

激活我的 venv 并通过安装 Pydantic 后

pip install pydantic
Run Code Online (Sandbox Code Playgroud)

我尝试创建一个新文件,如下所示:

from pydantic import Basemodel, EmailStr

class Person(BaseModel):
      id: int
      name: str
      email: EmailStr
Run Code Online (Sandbox Code Playgroud)

并且只是使用未使用的类运行该文件。但它返回了以下错误:

ModuleNotFoundError: No module named 'email_validator'
.
.
.
ImportError: email-validator is not installed, run `pip install pydantic[email]`
Run Code Online (Sandbox Code Playgroud)

运行时提示

ModuleNotFoundError: No module named 'email_validator'
.
.
.
ImportError: email-validator is not installed, run `pip install pydantic[email]`
Run Code Online (Sandbox Code Playgroud)

它告诉我:

zsh: no matches found: pydantic[email]
Run Code Online (Sandbox Code Playgroud)

有人可以帮我解决这个愚蠢的初学者错误吗?谢谢!

我重新安装了 Pydantic,重新创建了 venv,重新激活了 venv。

python zsh python-venv pydantic

9
推荐指数
1
解决办法
5072
查看次数

使用 Python 3.11 创建虚拟环境返回错误

使用 Python 3.11 解释器创建 virtualenv 时出现错误。

我在终端中输入了这个

python3.11 -m venv env
Run Code Online (Sandbox Code Playgroud)

它返回了这个:

Error: Command '['/home/bambang/env/bin/python3.11', '-m', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.
Run Code Online (Sandbox Code Playgroud)

可能缺少什么?

python-venv python-3.11

9
推荐指数
2
解决办法
9131
查看次数