首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python:理解多个版本、符号链接和虚拟环境

python:理解多个版本、符号链接和虚拟环境
EN

Stack Overflow用户
提问于 2018-12-14 13:51:06
回答 1查看 1.6K关注 0票数 2

我需要帮助理解在我的MacOS 10.12上的Python版本的组织。我有pipbrew,没有conda。在我使用Python3.6.5之前,brew更新并安装了Python3.7.0。

然后,我在尝试创建一个新的虚拟环境时遇到了以下问题:

代码语言:javascript
复制
$ virtualenv venv_pointnet
-bash: /usr/local/bin/virtualenv: /usr/local/opt/python3/bin/python3.6: bad interpreter: No such file or directory

所以我将这一行添加到我的~/.bash_profile

代码语言:javascript
复制
alias python3="/usr/local/Cellar/python/3.6.5/bin/python3.6"

但问题仍然存在..。

这是一些关于我的系统的Python信息。

代码语言:javascript
复制
$ head -1 $(which virtualenv)
#!/usr/local/opt/python3/bin/python3.6

$ python3 --version
Python 3.6.5

$ which -a python3
/usr/local/bin/python3 

$ ls -l /usr/local/bin/python3
lrwxr-xr-x  1 myUser  admin  34 Oct 28 21:51 /usr/local/bin/python3 -> ../Cellar/python/3.7.0/bin/python3

$ ls -l /usr/local/opt/python3
lrwxr-xr-x  1 myUser  admin  22 Oct 28 21:51 /usr/local/opt/python3 -> ../Cellar/python/3.7.0

我的问题

  1. 为什么似乎有多个python3s,但$which -a python3只返回一个目录?
  2. 如果我当前的python3版本是3.6.5,这要归功于别名,那么为什么仍然有一个指向3.7.0的符号链接呢?
  3. 我如何使我的virtualenv工作?它的解释器是否仍然是3.6.5,还是必须将其更改为3.7.0?
  4. 对于python版本和符号链接,brew更新还会“破坏”什么东西呢?

我知道问题很广泛,但是任何能帮助我更好地理解这个python环境的东西,我都会非常感激!除了用python语言编程之外,我对它的设置>.<也不太了解。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-14 14:34:44

1

因为/usr/local/bin/python3是指向特定版本的符号链接。

2

您创建了一个别名,但这实际上并没有改变/usr/local/bin/python3的符号链接。但是,如果您真的想使用3.6.5版本,您可以这样做:

代码语言:javascript
复制
rm /usr/bin/python3
ln -s /usr/bin/python3.6 /usr/bin/python3

创建相应的符号链接。

3.

我不相信您能够更改虚拟服务器的python版本。您可能想尝试重新安装它。

4.

¯\_(ツ)_/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53781015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档