美文网首页
Python环境管理-Pipenv

Python环境管理-Pipenv

作者: 是立品啊 | 来源:发表于2020-11-10 15:47 被阅读0次

    Python环境管理-pipenv

    虚拟环境

    在Python中,虚拟环境(virtual enviroment)就是隔离的Python解释器环境。通过创建虚拟环境,你可以拥有一个独立的Python解释器环境。这样做的好处是可以为每一个项目创建独立的Python解释器环境,因为不同的项目常常会依赖不同版本的库或Python版本。使用虚拟环境可以保持全局Python解释器环境的干净,避免包和版本的混乱,并且可以方便地区分和记录每个项目的依赖,以便在新环境下复现依赖环境。

    pip

    pip是用来安装Python包的工具,新版本的Python默认安装了此工具

    • 查看版本
    pip --version
    
    • 安装包
    pip install packageName
    
    • 以上命令会从PyPI(https://pypi.org)(是一个Python包的在线仓库)下载依赖
    • packageName不区分大小写,一般都是小写

    pipenv

    Pipenv是基于pip的Python包管理工具,它和pip的用法非常相似,可以看作pip的加强版,它的出现解决了旧的pip+virtualenv+requirements.txt的工作方式的弊端。具体来说,它是pip、Pipfile和Virtualenv的结合体,它让包安装、包依赖管理和虚拟环境管理更加方便,使用它可以实现高效的Python项目开发工作流

    安装

    pip install pipenv
    
    pipenv --version
    

    新建

    cd到项目目录(仓库pull下来的),执行命令pipenv install

    $ pipenv install
    Creating a virtualenv for this project...
    Pipfile: /Users/caolipin/Repository/helloflask/Pipfile
    Using /usr/local/bin/python3 (3.8.5) to create virtualenv...
    ⠹ Creating virtual environment...created virtual environment CPython3.8.5.final.0-64 in 814ms
      creator CPython3Posix(dest=/Users/caolipin/pyenv/helloflask-X1lLbtwO, clear=False, global=False)
      seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/Users/caolipin/Library/Application Support/virtualenv)
        added seed packages: pip==20.2.4, setuptools==50.3.2, wheel==0.35.1
      activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator
    
    ✔ Successfully created virtual environment!
    Virtualenv location: /Users/caolipin/pyenv/helloflask-X1lLbtwO
    Installing dependencies from Pipfile.lock (733065)...
      🐍   ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 30/30 — 00:00:13
    To activate this project's virtualenv, run pipenv shell.
    Alternatively, run a command inside the virtualenv with pipenv run.
    
    • pipenv install命令会创建一个新的虚拟环境,然后自动从Pipfile中读取依赖并安装到新创建的虚拟环境中。
    • 在创建虚拟环境时,如果项目根目录下没有Pipfile文件,pipenv install命令还会在项目文件夹根目录下创建PipfilePipfile.lock文件
      • Pipfile:记录项目依赖包列表
      • Pipfile.lock:记录固定版本的详细依赖包列表。
      • 使用Pipenv安装/删除/更新依赖包时,Pipfile以及Pipfile. lock会自动更新,无须手动维护。
    • PIPENV_VENV_IN_PROJECT设置虚拟环境存放目录的虚拟环境名称,方便统一管理多个虚拟环境

    激活

    显示激活

    直接激活进入到虚拟环境

    pipenv shell
    

    非显示激活

    在全局的Python解释器环境使用虚拟环境中的Python解释器执行脚本

    pipenv run hello.py
    
    • pipenv run是更推荐的做法,因为这个命令可以让你在执行操作时不用关心自己是否激活了虚拟环境

    退出

    exit
    

    安装依赖

    pipenv install package
    
    • Pipenv会自动帮我们管理虚拟环境,所以在使用pipenv install package执行安装Python包时,无论是否激活虚拟环境,包都会安装到虚拟环境中

    更新依赖

    pipenv update package
    

    查看依赖

    查看当前环境下的依赖情况

    pipenv graph
    

    相关文章

      网友评论

          本文标题:Python环境管理-Pipenv

          本文链接:https://www.haomeiwen.com/subject/bysjbktx.html