系统python版本处于活动状态,而不是本地pyenv版本 [英] System python version active instead of local pyenv version

查看:18
本文介绍了系统python版本处于活动状态,而不是本地pyenv版本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在激活虚拟环境后检查是否使用了正确的python版本?我尝试了哪个python3和哪个python,但是两个输出都指示系统python版本,而不是本地pyenv版本。它是否仍在使用我的本地版本,或者我的安装是否有问题?

这里是命令行输出。

Documents/DataStuff/pdf_tools via 🐍 v3.9.5
❯ python --version
zsh: command not found: python

Documents/DataStuff/pdf_tools via 🐍 v3.9.5
❯ python3 --version
Python 3.9.5

Documents/DataStuff/pdf_tools via 🐍 v3.9.5
❯ pyenv global
3.8.5

Documents/DataStuff/pdf_tools via 🐍 v3.9.5
❯ pyenv local
3.7.5

Documents/DataStuff/pdf_tools via 🐍 v3.9.5
❯ python3 -m venv .venv

Documents/DataStuff/pdf_tools via 🐍 v3.9.5 took 31s
❯ source .venv/bin/activate
(.venv)  

Documents/DataStuff/pdf_tools via 🐍 v3.9.5 (.venv)
❯ which python
/mnt/c/Users/Saša/Documents/DataStuff/pdf_tools/.venv/bin/python
(.venv)  

Documents/DataStuff/pdf_tools via 🐍 v3.9.5 (.venv)
❯ python --version
Python 3.9.5
(.venv)  

Documents/DataStuff/pdf_tools via 🐍 v3.9.5 (.venv)
❯ python3 --version
Python 3.9.5
(.venv)  

以下是一些系统信息:
系统:windows-linux-subsystem2
软件包管理器:HOMEBREW 3.1.5
Python版本:3.9.5
Pyenv版本:1.2.27

安装步骤:

  1. 通过自制软件安装python和pyenv。
brew install python-tk@3.9
brew install pyenv
  1. 通过pyenv安装Python版本3.7.5和3.8.5。
pyenv install 3.7.5
pyenv install 3.8.5
  1. 将pyenv global设置为3.8.5(尚不支持3.9.5),将local设置为3.7.5
pyenv global 3.8.5
pyenv local 3.7.5
  1. 创建虚拟环境
python3 -m venv .venv
  1. 激活虚拟环境
source .venv/bin/activate

推荐答案

我将尝试为您全面演练。

如何使用pyenv global/local解析python

  • 我正在处理一个空文件夹~/py-version-example/
  • 我使用pyenv(版本1.2.26)管理我系统中的所有Python多个安装
py-version-example $ pyenv --version
pyenv 1.2.26
  • 目前,我的项目中有以下版本的Python可供pyenv设置(&q;)
  • 版本3.9.2pyenv global配置为默认值
  • 此版本号存储在";全局";文件~/.pyenv/version
py-version-example $ pyenv versions
  system
* 3.9.2 (set by /Users/***/.pyenv/version)
  3.9.3
  3.9.4
  miniforge3-4.9.2
  • 由于这是一个全新的项目,pyenv没有设置过local版本的Python
  • 但是,根据上面的pyenv global,Python";Visible&Quot;的版本将是3.9.2
  • 此版本的Python解释器由pyenv安装和管理的垫片解析
py-version-example $ pyenv local
pyenv: no local version configured for this directory

py-version-example $ pyenv global
3.9.2

py-version-example $ python -V
Python 3.9.2

py-version-example $ which python
/Users/***/.pyenv/shims/python

py-version-example $ pyenv version
3.9.2 (set by /Users/***/.pyenv/version)

设置新项目

  • 现在我要将Python的local版本设置为3.9.4
  • 您将看到将使用完全相同的填补(/Users/***/.pyenv/shims/python)
  • 但是,这次版本将来自项目文件夹内的文件.python-version
py-version-example $ pyenv local 3.9.4

py-version-example $ pyenv local
3.9.4

py-version-example $ python -V
Python 3.9.4

py-version-example $ which python
/Users/***/.pyenv/shims/python

py-version-example $ pyenv version
3.9.4 (set by /Users/***/py-version-example/.python-version)

设置虚拟环境

  • 现在我要在项目文件夹中设置并激活一个新的虚拟环境
  • 根据上述所有项目,此虚拟环境将从local继承版本3.9.4
  • 但是,这次您应该看到Python解释器来自虚拟环境,而不再来自pyenv填充程序:
py-version-example $ python -m venv .venv

py-version-example $ source .venv/bin/activate

(.venv) py-version-example $ python -V
Python 3.9.4

(.venv) py-version-example $ which python
/Users/***/py-version-example/.venv/bin/python

这篇关于系统python版本处于活动状态,而不是本地pyenv版本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆