• 包管理工具之Pipenv


    pipenv 都包含什么?

    pipenv 是 Pipfile 主要倡导者、requests 作者 Kenneth Reitz 写的一个命令行工具,主要包含了Pipfile、pip、click、requests和virtualenv。Pipfile和pipenv本来都是Kenneth Reitz的个人项目,后来贡献给了pypa组织。Pipfile是社区拟定的依赖管理文件,用于替代过于简陋的 requirements.txt 文件。

    Pipfile的基本理念是:

    Pipfile 文件是 TOML 格式而不是 requirements.txt 这样的纯文本。
    一个项目对应一个 Pipfile,支持开发环境与正式环境区分。默认提供 default 和 development 区分。
    提供版本锁支持,存为 Pipfile.lock。
    click是Flask作者 Armin Ronacher 写的命令行库,现在Flask已经集成了它。

    接下来,我们看看怎么使用它吧

    安装和使用

    安装

    pip install pipenv

    用法

     进入当前项目文件夹目录:

    pipenv --three 会使用当前系统的Python3创建环境
    
    pipenv --python 3.6 指定某一Python版本创建环境
    
    pipenv shell 激活虚拟环境
    
    pipenv --where 显示目录信息
    /home/jiahuan/pipenvtest
    
    pipenv --venv 显示虚拟环境信息
    /home/jiahuan/.local/share/virtualenvs/pipenvtest-9KKRH3OW
    
    pipenv --py 显示Python解释器信息
    /home/jiahuan/.local/share/virtualenvs/pipenvtest-9KKRH3OW/bin/python
    
    pipenv install requests 安装相关模块并加入到Pipfile
    
    pipenv install django==1.11 安装固定版本模块并加入到Pipfile
    
    pipenv graph 查看目前安装的库及其依赖
    
    requests==2.18.4
      - certifi [required: >=2017.4.17, installed: 2017.11.5]
      - chardet [required: <3.1.0,>=3.0.2, installed: 3.0.4]
      - idna [required: >=2.5,<2.7, installed: 2.6]
      - urllib3 [required: >=1.21.1,<1.23, installed: 1.22]
    
    pipenv check检查安全漏洞  - Checking PEP 508 requirements…  - Passed!  - Checking installed package safety…  - All good!
    pipenv uninstall --all 卸载全部包并从Pipfile中移除
    pipenv run python manage.py runserver 运行Py文件
    alias prp="pipenv run python"

    其他命令

    E:python机器学习和深度学习深度学习自然语言处理lstm-crfzh-NER-TF>pipenv --help
    Usage: pipenv [OPTIONS] COMMAND [ARGS]...
    
    Options:
      --where             Output project home information.
      --venv              Output virtualenv information.
      --py                Output Python interpreter information.
      --envs              Output Environment Variable options.
      --rm                Remove the virtualenv.
      --bare              Minimal output.
      --completion        Output completion (to be eval'd).
      --man               Display manpage.
      --support           Output diagnostic information for use in GitHub issues.
      --site-packages     Enable site-packages for the virtualenv.  [env var:
                          PIPENV_SITE_PACKAGES]
      --python TEXT       Specify which version of Python virtualenv should use.
      --three / --two     Use Python 3/2 when creating virtualenv.
      --clear             Clears caches (pipenv, pip, and pip-tools).  [env var:
                          PIPENV_CLEAR]
      -v, --verbose       Verbose mode.
      --pypi-mirror TEXT  Specify a PyPI mirror.
      --version           Show the version and exit.
      -h, --help          Show this message and exit.
    
    
    Usage Examples:
       Create a new project using Python 3.7, specifically:
       $ pipenv --python 3.7
    
       Remove project virtualenv (inferred from current directory):
       $ pipenv --rm
    
       Install all dependencies for a project (including dev):
       $ pipenv install --dev
    
       Create a lockfile containing pre-releases:
       $ pipenv lock --pre
    
       Show a graph of your installed dependencies:
       $ pipenv graph
    
       Check your installed dependencies for security vulnerabilities:
       $ pipenv check
    
       Install a local setup.py into your virtual environment/Pipfile:
       $ pipenv install -e .
    
       Use a lower-level pip command:
       $ pipenv run pip freeze
    
    Commands:
      check      Checks for security vulnerabilities and against PEP 508 markers
                 provided in Pipfile.
      clean      Uninstalls all packages not specified in Pipfile.lock.
      graph      Displays currently-installed dependency graph information.
      install    Installs provided packages and adds them to Pipfile, or (if no
                 packages are given), installs all packages from Pipfile.
      lock       Generates Pipfile.lock.
      open       View a given module in your editor.
      run        Spawns a command installed into the virtualenv.
      shell      Spawns a shell within the virtualenv.
      sync       Installs all packages specified in Pipfile.lock.
      uninstall  Un-installs a provided package and removes it from Pipfile.
      update     Runs lock, then sync.

    注:pipenv install 安装模块时有时候会很慢

    可以设置国内源:Pipfile文件中[source]下面url属性,比如修改成:url = "https://pypi.tuna.tsinghua.edu.cn/simple"

    国内镜像源的选择

    阿里云:http://mirrors.aliyun.com/pypi/simple/ 
    豆瓣:http://pypi.douban.com/simple/ 
    清华大学:https://pypi.tuna.tsinghua.edu.cn/simple/ 
    中国科学技术大学:https://pypi.mirrors.ustc.edu.cn/simple/
    

      

    作者:张亚飞
    出处:https://www.cnblogs.com/zhangyafei
    gitee:https://gitee.com/zhangyafeii
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
  • 相关阅读:
    Jzoj2581 最大公约数
    Jzoj2270 【SDOI2011】计算器
    Jzoj2270 【SDOI2011】计算器
    SystemVerilog语言简介(三) 分类: 硬件开发_FPGA 2013-10-09 16:52 540人阅读 评论(0) 收藏
    SystemVerilog语言简介(二) 分类: 硬件开发_FPGA 2013-10-09 16:51 438人阅读 评论(0) 收藏
    SystemVerilog语言简介(一) 分类: 硬件开发_FPGA 2013-10-09 16:49 468人阅读 评论(0) 收藏
    windows进程间通信 . 分类: VC++ 2013-10-09 16:27 567人阅读 评论(0) 收藏
    事件和进程间的数据交换 . 分类: VC++ 2013-10-09 11:47 585人阅读 评论(0) 收藏
    企业没“文化”很可怕 分类: 项目管理 2013-10-09 11:34 355人阅读 评论(0) 收藏
    每个单位都有三种人 分类: 项目管理 2013-10-09 11:34 355人阅读 评论(0) 收藏
  • 原文地址:https://www.cnblogs.com/zhangyafei/p/10386244.html
Copyright © 2020-2023  润新知