python虚拟环境

python虚拟环境

虚拟环境的作用

一台服务器可同时运行多个项目,各项目对python解释器的要求各不相同从而对python库的版本要求也不相同,例如用于爬取网页的urllib库在python3中直接导入而python2需要再导入一个urllib2。虚拟环境此时的作用就是新增不同版本的python解释器(可指定为python2.7、3.6、3.9),每一个解释器和默认python一样在系统中都有一个文件路径。

虚拟环境工具

目前市场上流行的虚拟环境工具有:

Virtualenv

virtualenv是常用的较为轻量的虚拟环境工具。在界面版系统中,pycharm已经嵌入了多种环境工具以virtualenv为例,步骤如下图
首先新建项目
在这里插入图片描述
截图 2022-07-07 111147.jpg]]设置项目的保存路径同时设置虚拟环境python解释器的路径即可
在这里插入图片描述

在命令行版系统(Linux)中,使用pip3 install virtualenv,是pip还是pip3是根据系统默认的是python2还是python3决定,总之virtualenv --version是20.15.1最好,慎重使用apt get install virtualenv大概率版本不对。然后pip3 install virtualenvwrapper是virtualenv的插件,更简便地管理虚拟环境。然后sudo vi ~/.bashrc修改环境变量,source .bashrc更新。

export WORKON_HOME=$HOME/.virtualenvs #生成的虚拟环境以及python解释器都在这个目录下,注意这是一个隐藏目录。也可以自定义路径,在$HOME/后修改
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV=~/.local/bin/virtualenv
source ~/.local/bin/virtualenvwrapper.sh
#注:ubuntu18及以上版本,virtualenv和virtualenvwrapper.sh被安装到了home目录下的.local/bin/中,非原来的/usr/local/bin/中

没有插件只能mkvirtualenv test一个虚拟环境后每次cd XX/XX/test然后激活进入环境source test/bin/activate,安装插件后只需要进入workon test退出deactivate删除rmvirtualenv test

开机启动自运行python

有时我们需要服务器或者树莓派,上电后立即执行某几个python项目。那么多任务时我们就需要给每个项目找到对应的python解释器,可以用find / -name python3找到所有包含’python3’名的文件路径也可以进入虚拟环境后python
在这里插入图片描述

然后cd /etc/rc.local下用shell脚本添写开机执行命令

#!/bin/sh

#/etc/init.d/testboot

### BEGIN INIT INFO

# Provides:testboot

# Required-Start:$remote_fs $syslog

# Required-Stop:$remote_fs $syslog

# Default-Start:2 3 4 5

# Default-Stop:0 1 6

# Short-Description: testboot

# Description: This service is used to start my applaction

### END INIT INFO

case "$1" in

     start)

     echo "start your app here."

     su pi -c "exec ~/testboot.sh"

     ;;

     stop)

     echo "stop your app here."

     ;;

     *)

     echo "Usage: service testboot start|stop"

     exit 1

     ;;

esac

#写在exit 0前
/home/xzg/.virtualenvs/test/bin/python /home/xzg/main.py

exit 0

测试失败:whereis python3该命令只有在进入虚拟环境下才能找到虚拟环境的python解释器与直接python内执行查找相同,主要是因为whereis根据已有的环境路径查找,virtualenv在进退虚拟环境时python解释器的环境路径也在由默认的和虚拟的相应切换。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值