Linux上Python虚拟环境的使用

简介: Linux上Python虚拟环境的使用

在linux上配置虚拟环境时,出现了各种各样的错误,百度了好久才找到,百度上的对错误的解决都不全,所以决定自己总结下

什么是虚拟环境

虚拟环境是用于依赖项管理和项目隔离的Python工具,允许Python站点包(第三方库)安装在本地特定项目的隔离目录中,而不是全局安装(即作为系统范围内的Python的一部分)。

这听起来不错,但到底什么是虚拟环境呢?虚拟环境只是一个包含三个重要组件的目录:

  • 安装了第三方库的site-packages /文件夹。
  • 系统上安装的Python可执行文件的symlink符号链接
  • 确保执行Python代码的脚本使用在给定虚拟环境中安装的Python解释器和站点包。

安装模块

需要使用到的模块有virtualenv和virtualenvwrapper,前者才是真正的虚拟环境的实现模块。后者是为了管理虚拟环境的,比如创建,删除虚拟环境,使用后者来就比较简单

# 顺序不能颠倒!
# 我相信大家都是用python3吧,^_^
sudo pip3 install virtualenv
sudo pip3 install virtualenvwrapper

一些相关配置

  1. virtualenv的配置
    在安装好了后输入:virtualenv --verssion ,呵呵,我估计大家都是报错说没有virtualenv之类的 _
  2. 首先执行find / -name virtualenv 2>/dev/null来查看virtualenv的位置,如下,我的virtualenv在/usr/local/python3/bin/virtualenv(很明显这是一个可执行文件,因为放在了bin目录下),你们的可能不一样(具体看你们python是怎么安装的)。
  3. 0fa5d35e90d9e12471fb54789942429d.png
  4. 然后将该文件链接到/usr/bin/virtualenv,如下:

87a0bf030ea2bf5dd5e7ca8295dab1ce.png

virtualenvwrapper的配置

virtualenvwrapper里面有命令:

  • lsvirtualenv: 列出虚拟环境列表
  • workon+Enter: 列出虚拟环境列表
  • mkvirtualenv [虚拟环境名称]: 新建虚拟环境
  • workon [虚拟环境名称]: 切换虚拟环境
  • rmvirtualenv [虚拟环境名称]: 删除虚拟环境
  • deactivate: 离开虚拟环境

但当我们输入:lsvirtualenv,发现又是找不到该命令,喵的,还是需要配置配置。

  • 第一步:创建目录mkdir ~/.virtualenvs , 该目录是虚拟环境的默认存放位置
  • 第二步:确定virtualenvwrapper.sh文件的路径,输入:find / -name virtualenvwrapper.sh 2>/dev/null,复制该路径

0aee94265d0aba7dac937389719f8bd8.png

第三步:进入用户主目录,编辑.bashrc文件,添加如下代码:

export WORKON_HOME=$HOME/.virtualenvs
#export PROJECT_HOME=$HOME/Devel
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 
source virtualenvwrapper.sh的路径

70865d92fabc4d50a3fab2bcbf7299c6.png

如果你的系统中既有python2还有python3,那么你还需要在.bashrc文件里加上这一行,并且要加在source /usr/local/python3/bin/virtualenvwrapper.sh之前。指明使用的版本,方正我的就报错了。VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3第四步:执行.bashrc文件,使其立即生效。source .bashrc,大功告成!












目录
相关文章
|
1月前
|
存储 Linux
Linux环境下删除大文件后磁盘空间未释放问题诊断流程。
以上诊断流程涉及Linux底层机制与高级管理技能结合之处,并需要管理员根据实际环境灵活调整诊断策略与解决方案。
110 8
|
2月前
|
Linux 数据安全/隐私保护 iOS开发
推荐Linux环境下效能优良的双向文件同步工具
综合上述条件,对于Linux环境下的双向文件同步需求,Unison 和 Syncthing 是两个非常出色的选择。它们都有良好的社区支持和文档资源,适用于不同规模的环境,从个人使用到商业部署。Unison 特别适合那些需要手动干预同步过程、需要处理文件冲突解决的场景。而 Syncthing 更加现代化,适合需要自动、实时的数据同步与备份的环境。对于选择哪一个,这将取决于个人的使用场景和具体需求。
315 16
|
2月前
|
安全 应用服务中间件 网络安全
在Linux环境部署Flask应用并启用SSL/TLS安全协议
至此,你的Flask应用应该能够通过安全的HTTPS协议提供服务了。记得定期更新SSL证书,Certbot可以帮你自动更新证书。可以设定cronjob以实现这一点。
199 10
|
1月前
|
Ubuntu 安全 Linux
Ubuntu 24.10 发行版登场:Linux 6.11 内核、GNOME 47 桌面环境
Ubuntu 24.10 还带来了 GNOME 47,增强了性能和稳定性,并引入了新功能。此版本的 Ubuntu 还默认在采用 Nvidia 显卡的硬件上切换到 Wayland,并在支持的硬件上默认使用开源的 Nvidia 560 内核模块。 另外需要注意的是,Ubuntu 24.10 是稳定版本,但作为非 LTS 版本,仅支持 9 个月。
|
1月前
|
安全 Linux 网络安全
Linux系统初步设置本地Git环境和生成SSH密钥的步骤。
现在您的Linux系统已经配置好了Git环境,并创建并添加了SSH密钥,可以安全地与远端仓库进行交互,无论是克隆、推送还是拉取操作。此过程确保了数据传输的安全并使版本控制流程更为顺畅。使用Git时应考虑定期更新并管理您的凭据,以确保安全性。
323 0
|
1月前
|
XML 缓存 Linux
在Linux环境下解决Visual Studio Code字体显示异常和字体替换方法。
解决Linux下VS Code字体显示异常,需要对Linux字体渲染机制有所理解,并对VS Code的配置选项进行合理设置。替换字体时则要通过系统字体配置或VS Code设置来完成。通过上述方法,可以有效地解决字体显示问题,从而提升代码编辑的视觉体验。
209 0
|
2月前
|
Kubernetes Linux 网络安全
Rocky Linux 8.9配置Kubernetes集群详解,适用于CentOS环境
初始化成功后,记录下显示的 `kubeadm join`命令。
161 0
|
3月前
|
Ubuntu Linux Shell
Linux环境下VSCode快速安装终极指南:debian/ubuntu/linux平台通用
以上就是在Linux环境下安装VSCode的终极指南,抛开繁复的专业词汇,以平易近人的文字、形象生动的比喻让你轻松学会这一过程。别忘了,你的小伙伴VSCode已经在应用菜单里等你了!
929 23
|
3月前
|
安全 Linux 定位技术
Linux环境下必备的基础命令概览
以上就是Linux系统中的基本命令和工具,掌握它们就能帮你在Linux世界里游刃有余。这其实就像是学习驾驭一辆新车,熟悉了仪表盘,调整好了座椅,之后的旅程就只需要享受风驰电掣的乐趣了。
98 4