python虚拟环境venv、virtualenv

目录

原理

创建、删除虚拟环境

激活、退出、初始化虚拟环境

导出、导入虚拟环境

pycharm+虚拟环境

部署虚拟环境

pycharm目录下idea作用

pycharm目录下venv文件内容含义


原理


虚拟环境是利用了操作系统中环境变量,以及进程间环境隔离的特性,python就是在激活虚拟环境的时候,激活脚本会将当前命令行程序的 PATH 修改为虚拟环境的,这样执行命令就会在被修改的 PATH 中查找,避免了找到原本的 PATH ,实现了 Python 环境的隔离。

创建、删除虚拟环境

创建虚拟环境分为两种:
    python3.3之前,只能通过 virtualenv 创建虚拟环境
    python3.3之后,可以用模块 venv 代替 virtualenv 工具

下图为pycharm中创建的虚拟环境:

用 virtualenv 创建虚拟环境:
    pip install virtualenv
    virtualenv venv_1    # 这条命令创建一个名为 venv_1 的虚拟环境

用 venv 创建虚拟环境:
    python3 -m venv venv_2    # 此处 venv_2 也是自定义的虚拟环境名字

如果不想在虚拟环境中下载系统中重复的包,可以使用该命令:
    (允许虚拟环境访问 system site packages 目录,允许使用系统中安装的第三方包)
    方法一:

    --system-site-pakage

    python3 -m venv --system-site-packages

    方法二:

    改动 venv 目录下 pyvenv.cfg 文件:

    include-system-site-packages=true

看安装的包来自哪里:

    pip list -v

删除虚拟环境:
    rm -rf 环境名

venv 命令帮助:
    python -m -venv -h

激活、退出、初始化虚拟环境

如何激活虚拟环境:
    (虚拟环境创建好后,需激活才能在当前的命令行中使用,可以理解成将当前命令行环境 PATH 变量的值替换掉)
    (命令行界面)创建好虚拟环境后,cd 到 venv_2 中,再 cd 到 bin 中,输入以下命令:
    source activate    # mac
    Scripts目录下activate    # windows
    

退出虚拟环境:
    deactivate

初始化虚拟环境:
    (需要在虚拟环境父目录下执行该条命令)
    python -m venv --clear 环境名

导出、导入虚拟环境


将项目的依赖库导出,作为代码的一部分:
    pip freeze>requirements.txt
导出的内容在其他虚拟环境中可以导入:
    pip install -r requirements.txt

pycharm+虚拟环境

结合pycharm:
    ①新建环境
        new project        # 选这个
    ②环境选择
        new environment using    # 创建一个新的环境(会生成一个venv目录)        选这个
            Inherit global site-packages    # 是否要继承基础解析器的第三方库
            Make available to all project    # 是否将这个虚拟环境作为默认的环境
        existing interpreter        # 使用已经存在的解释器

部署虚拟环境

部署虚拟环境流程:
    ①开发完成后,使用 pip freeze>requirements.txt 命令将项目的库依赖导出,作为项目的一
       部分
    ②将代码上传到服务器
    ③在服务器上创建一个虚拟环境
    ④激活虚拟环境,执行 pip install -r requirements.txt 安装项目依赖

pycharm目录下idea作用

创建环境时,自动创建的 .idea 作用:
.idea 保存 IDE 需要的和你当前项目相关的一些配置,状态,比如说,你打开了N个文件,关了软件,下次再打开,又给你恢复到你上次关闭时的状态,这些信息就在这里面了(你可以关闭后把.idea目录删掉再打开试试)

pycharm目录下venv文件内容含义

venv内含文件含义:
    lib 文件夹下 site-package:包含使用 pip 安装的依赖项(如request、flask等)。
    scripts文件夹:它包含激活文件(activate)、退出激活文件(deactivate)、pip.exe、python.exe等。
    pyvenv.cfg:可以通过该文件改变虚拟环境所指向的 PATH(如果创建虚拟环境后,想要手动更改虚拟环境指向真实python环境,也可以通过该文件修改)
 

  • 7
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中有三种常用的虚拟环境管理工具,分别是virtualenvvenv和conda。其中,venvPython自带的虚拟环境管理器,而virtualenv则是一个第三方库,而conda则是一个独立的虚拟环境和包管理工具。 引用中提到了如何使用virtualenvvenv创建虚拟环境,并且可以通过指定不同的Python解释器来控制虚拟环境中的Python版本。这对于需要在不同的Python版本之间切换的开发者来说非常有用。 引用中指出了conda相比于virtualenv/venv的一个重要优势,即在使用conda时,虚拟环境中的Python版本不受系统Python版本的限制。这意味着可以在同一台机器上同时使用不同版本的Python,而不会相互冲突。 引用中对venv和conda进行了比较,指出了它们的一些区别。venv是一个虚拟环境管理器,而pip是一个包管理器,而conda则结合了两者的功能。虽然conda的包管理器功能相对较弱,大多数时候还是使用pip来安装包。但是,conda可以安装一些非Python的工具软件,而pip只能安装Python的包。此外,conda的虚拟环境管理功能相对较好,允许多个项目共享一个虚拟环境,并且虚拟环境是独立于操作系统解释器环境的,不受操作系统解释器版本的限制。 总结起来,虚拟环境管理工具venvvirtualenv主要用于创建和管理Python虚拟环境,而conda则更强大一些,除了可以创建和管理虚拟环境外,还可以安装非Python的工具软件,并且不受系统Python版本的限制。具体选择哪种工具可以根据具体的需求和项目特点进行选择。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [python3基础知识复习 -- 虚拟环境(conda VS venv)](https://blog.csdn.net/peanutfish/article/details/125023770)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值