Linux 下 Python 虚拟环境怎么切换

2019 年 6 月 27 日
 cwjokaka

系统的 python 版本为 2.7。 工程自带的虚拟环境为 3.7。 在工程根目录下执行 source venv/Scripts/activate 进入虚拟环境后,执行 python 进入编辑模式,发现所在版本仍然是系统的 2.7。有没有人知道这是什么肥四

7019 次点击
所在节点    程序员
33 条回复
wlzd
2019 年 6 月 27 日
你这不对吧,建议导出 requirment.txt,用系统自带的 python3 安装或者使用 miniconda 创建需要的 Python 版本
encro
2019 年 6 月 27 日
deactive
JsonLee
2019 年 6 月 27 日
用 which 看一下 python 的路径是不是 venv 中的,如果是,那就是你创建 venv 的时候使用 python2 创建的了,改成 python3 -m virtualenv venv 来创建试试。
ysc3839
2019 年 6 月 27 日
virtualenv 创建的时候脚本中会写死绝对路径的,你这里说“工程自带的虚拟环境”大概是从别的地方拷过来的?那是用不了的。建议使用 pipenv
rookiebulls
2019 年 6 月 27 日
Linux 下不应该是 bin 吗,windows 才 script
imkuang
2019 年 6 月 27 日
建议用 conda,创建的虚拟环境直接带自己的 python 解释器,想用哪个版本用哪个版本,完全不用管系统带的 python 环境是啥
Ct5T66PVR1bW7b2z
2019 年 6 月 27 日
使用 pyenv 更简单: https://www.abbeyok.com/archives/352
mantou99
2019 年 6 月 27 日
workon 可以切换
Trim21
2019 年 6 月 27 日
Linux 下面应该是 venv/bin/ac*才对吧
bmos
2019 年 6 月 27 日
今天刚刚重命名了一个文件夹,发现 source 之后环境就不生效了,全部重新弄了一遍.
676529483
2019 年 6 月 27 日
虚拟环境又不是分发包,指向仍然是系统安装的 python。虚拟环境的目的是隔离不同包版本,不是分发应用用的。建议安装 py3 后重建虚拟环境
chinesestudio
2019 年 6 月 27 日
安装 python3 然后 ls 搞定 几行代码
cwjokaka
2019 年 6 月 27 日
@ysc3839
@Abbeyok
@676529483
我遇到的大概是你们所说的这种情况了,pipenv 是否就可以解决这个问题了
polebug
2019 年 6 月 28 日
docker 或
虚拟机(vargant) + conda
ysc3839
2019 年 6 月 28 日
@cwjokaka pipenv 能解决项目依赖管理,可以自动创建一个 virtualenv 然后安装依赖项目。但是不能实现打包整个 Python 环境然后跨系统使用。
gtlions
2019 年 6 月 28 日
pyenv 了解下
xiaket
2019 年 6 月 28 日
我觉得这根本不是 Python 的问题, 而是你不太熟悉 Linux 的问题...
LokiSharp
2019 年 6 月 28 日
pipenv
skymei
2019 年 6 月 28 日
你都没有进入虚拟环境吧
TrickWu
2019 年 6 月 28 日
我盲猜你是直接把 windows 下的 env 直接拷贝到了 linux 下使用

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/578069

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX