关于Pipenv 的使用 总结

什么是 Pipenv

Pipenv是Kenneth Reitz在2017年1月发布的Python依赖管理工具,现在由PyPA维护。你可以把它看做是pip和virtualenv的组合体,而它基于的Pipfile则用来替代旧的依赖记录方式(requirements.txt)。

在这篇文章里,我将会以旧的依赖管理工作流程作为对比来介绍Pipenv的基本用法,更详细的用法可以参考Pipenv文档,或是Kenneth Reitz在PyCon 2018的演讲《Pipenv: The Future of Python Dependency Management》。

为什么使用 Pipenv

Pipenv会自动帮你管理虚拟环境和依赖文件,并且提供了一系列命令和选项来帮助你实现各种依赖和环境管理相关的操作。简而言之,它更方便、完善和安全。你可以通过Pipenv文档开头的介绍来了解它的详细特性。Pipenv的slogan是“Python Dev Workflow for Humans”,作为人类,当然应该尝试一下……

上面直接拿了别人的了,感觉自己也说不出来什么,总之就是用了 Pipenv 之后可以让你的 Python 环境管理方面变得更加简单快乐,方便我们的开发。

下载

  • 首先 用 pip 来安装 pip install pipenv

  • 下载完后你在终端输入 pipenv 应该会报错,因为 pipenv 默认安装在 ~/.local下(其实红色字体也说明了),没有在PATH中, 运行 python -msite --user-base 可以查看你安装的路径
    关于Pipenv 的使用 总结_第1张图片

  • 这样我们就需要把安装路径下的 bin(这里我的就是/home/rainbomsea/.local) 添加到 PATH 中.

  • 打开~/.bashrc文件在最后一句加上 export PATH=~/.local/bin:$PATH
    在这里插入图片描述

  • 保存退出 运行 source ~/.bashrc, 这次输入 pipenv 就会有成功了

使用(可以先跳到下面更换一下源)

  • 下载完就是创建了, 首先是进入到项目文件夹下(这里以example为例), 假设你需要requests这个模块

  • 运行pipenv install requests (这里其实就是吧pipenv installpipenv install requests两步当一步了)
    关于Pipenv 的使用 总结_第2张图片

  • 如上图, 他首先会创建一个虚拟环境然后下载requests的相关模板,然后再在当前目录下创建了Pipfile ,Pipfile.lock这两个文件

  • Pipfile 存放当前虚拟环境的配置信息,用来代替以前的requirements.txt文件

  • Pipfile.lock 记录了当前环境中安装的依赖的版本号以及哈希,以保证每次装出来的依赖都是一致的。

  • 图中 Virtualenv location: /home/rainbomsea/.local/share/virtualenvs/example-gBdafEu-说明了你虚拟环境的安装位置

  • 如果想吧环境就安装在当前目录下, 可以在当前目录下创建一个.venv文件夹,然后再执行pipenv install,这样虚拟环境就会安装在项目文件夹下了

  • 安装成功之后,我们可以创建一个简单的main.py来使用一下它

    import requests
    
    response = requests.get('https://httpbin.org/ip')
    
    print('你的 IP 地址是 {0}'.format(response.json()['origin']))
    
  • 然后用pipenv run 运行这个文件

    pipenv run python main.py
    
  • 你可以获得类似这样的输出:

    你的 IP 地址是 8.8.8.8
    
  • 也可以使用 pipenv shell 来生成一个新的 shell 这样就可以在shell 里面直接输入 python main.py 来运行,exit退出shell环境

  • 可以通过 pipenv uninstall来卸载你的包

    pipenv uninstall requeste
    
  • 删除环境的话可以直接使用 pipenv --rm.不想用pipenv了那就吧 PipfilePipfile.lock这两个文件都删了就行

    pipenv --rm
    

更换源

一般大家输入pipenv install 创建虚拟环境的时候往往会在卡在下面这里很长时间,有时候可能还会报时间超时的错误,这里主要是Pipfile 文件中指定使用官方源锁定依赖, 所以导致速度很慢,所以我们需要更换国内源在这里插入图片描述

  • 这里我用的是清华源, 首先在用户主目录下的.pip文件夹下面创建pip.conf文件
mkdir ~/.pip
vim ~/.pip/pipconf
  • 在文件里面添加下面内容
[global]        
index-url = https://pypi.tuna.tsinghua.edu.cn/simple      
  • 这样就可以了,再次执行 pipenv install 就会速度飞起, windwos 对应的目录是C:\Users\用户名\pip\pip.ini

你可能感兴趣的:(Ubuntu(18.04),相关问题及解决,Python学习)