pipenv 方便的python 开发工作流工具

pipenv 将 composer、bundler、npm、yarn、cargo 等比较方便的包管理工具添加到了python 语言中,可以
帮助我们自动的管理virtualenv ,同时可以方便的从pipefile 中添加或者移除包

pipenv 解决的问题

  • 我们不用在独立的使用pip 以及virualenv ,他们已经可以一起工作了
  • 使用requirements.txt 方式管理包是有问题的,因此pipenv 使用pipefile 以及pipefile.lock
  • 提供便捷的依赖图(通过 pipenv graph)
  • 可以高效的加载.env 文件,方便快发

一个基本使用

  • 安装
brew install pipenv
  • 初始化一个项目
    python3 环境
pipenv --python 3.7

效果

Creating a virtualenv for this project…
Pipfile: /Users/dalong/mylearning/pipenv-project/Pipfile
Using /usr/local/bin/python3 (3.7.2) to create virtualenv…
? Creating virtual environment...Using base prefix ‘/usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7‘
New python executable in /Users/dalong/.local/share/virtualenvs/pipenv-project-iZJiWFj1/bin/python3.7
Also creating executable in /Users/dalong/.local/share/virtualenvs/pipenv-project-iZJiWFj1/bin/python
Installing setuptools, pip, wheel...
done.
Running virtualenv with interpreter /usr/local/bin/python3

? Successfully created virtual environment!
Virtualenv location: /Users/dalong/.local/share/virtualenvs/pipenv-project-iZJiWFj1
Creating a Pipfile for this project…
  • 添加依赖
    tap-mysql
pipenv install tap-mysql

效果

Installing tap-mysql…
Adding tap-mysql to Pipfile‘s [packages]…
? Installation Succeeded
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
? Success!
Updated Pipfile.lock (430178)!
Installing dependencies from Pipfile.lock (430178)…
  ?? ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 13/14 — 00:00:00

  ?? ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 14/14 — 00:00:03
To activate this project‘s virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.
  • 运行安装的tap
pipenv run tap-mysql
  • 依赖图
    pipenv graph
tap-mysql==1.10.0
  - attrs [required: ==16.3.0, installed: 16.3.0]
  - backoff [required: ==1.3.2, installed: 1.3.2]
  - mysql-replication [required: ==0.18, installed: 0.18]
    - pymysql [required: Any, installed: 0.7.11]
  - pendulum [required: ==1.2.0, installed: 1.2.0]
    - python-dateutil [required: Any, installed: 2.7.5]
      - six [required: >=1.5, installed: 1.12.0]
    - pytzdata [required: Any, installed: 2018.7]
    - tzlocal [required: Any, installed: 1.5.1]
      - pytz [required: Any, installed: 2018.4]
  - PyMySQL [required: ==0.7.11, installed: 0.7.11]
  - singer-python [required: ==5.3.1, installed: 5.3.1]
    - backoff [required: ==1.3.2, installed: 1.3.2]
    - jsonschema [required: ==2.6.0, installed: 2.6.0]
    - python-dateutil [required: >=2.6.0, installed: 2.7.5]
      - six [required: >=1.5, installed: 1.12.0]
    - pytz [required: ==2018.4, installed: 2018.4]
    - simplejson [required: ==3.11.1, installed: 3.11.1]

说明

pipenv 工具还是很方便的,帮助我们简化了好多实际开发中的问题,在项目中很值得使用

参考资料

https://www.kennethreitz.org/essays/a-better-pip-workflow
https://github.com/pypa/pipenv

原文地址:https://www.cnblogs.com/rongfengliang/p/10352027.html

时间: 2024-10-10 18:21:44

pipenv 方便的python 开发工作流工具的相关文章

利用python开发财务工具

#coding:utf8 u"""东方财富网-财报分析工具""" import lxml from lxml import etree import requests id='sh600069' base_url='http://f10.eastmoney.com/NewFinanceAnalysis/PercentAjax_Indx?code=' #百分比报表 percent_url='http://f10.eastmoney.com/NewF

为什么 Python 开发人员应该使用 Pipenv

只用了一年, Pipenv 就变成了管理软件包依赖关系的 Python 官方推荐资源. Pipenv 是由 Kenneth Reitz 在一年多前创建的"面向开发者而生的 Python 开发工作流",它已经成为管理软件包依赖关系的 Python 官方推荐资源.但是对于它解决了什么问题,以及它如何比使用 pip 和 requirements.txt 文件的标准工作流更有用处,这两点仍然存在困惑.在本月的 Python 专栏中,我们将填补这些空白. 加vx:tanzhouyiwan 免费领

Python开发GUI实战:图片转换素描画工具!

奋斗没有终点 ! 好好学习72变,因为将来 没有人能替你阻挡81难 . 生如蝼蚁,当有鸿鹄之志: 命如纸薄,应有不屈之心 . ? 今天被这句话触动了,所以开篇分享给大家.鸡汤有毒,但有时大家却靠它激励自己继续前行! python开发GUI 程序员的自我救赎,使用python开发性格分析工具 这篇文章,通过Python编写了GUI的性格分析工具.一位从我公众号开始结识的朋友,询问关于如何快速编写一个exe工具的问题.由于功能简单且之前无相关GUI编程基础,为了快速完成开发,我向他推荐了easygu

sublime的python开发插件pythonDev

一直用python开发些工具之类的东西,比如api生成,解析excel或其它文本等等,但用了一些sublime插件都不太满意,不得已自己弄了个插件,感觉还顺手. 特色: 1.生成python2.7.8的API.几乎所有的模块都生成了.绝对方便. 2.建立新文件,有两个可自定义,authon和时间格式(时间一般不用改). 3.建立常用的__init__.py文件. 4.自动生成用户py文件里的关键字API,目前支持类名和函数名. 5.关键字跳转到定义功能,能转到函数或类定义的地方. 6.更正行首空

Python | Pipenv官方推荐的python包管理工具

原文地址:https://cloud.tencent.com/developer/article/1355672 Pipenv - 官方推荐的的python包管理工具. Pipenv是一款旨在将所有包管理工具(如bundler, composer, npm, cargo, yarn等)的优点集中应用于python领域中的工具.它对各个平台都有很好的支持. 它可以为你的项目自动创建和管理虚拟环境,并且在你安装/删除包时自动在Pipfile中添加/移除相应的包.它同时生成一个非常重要的Pipfile

Python开发MySQL数据库(表)克隆工具

前段时间因为某些需求,需要频繁的克隆MySQL的某些数据库或者某几个表.手动导出导入操作了几次,感觉甚是繁琐,而且效率不高,出错几率过大.索性抽时间用Python开发了一个MySQL的clone工具,用了一段时间,将数据库或者表克隆到同一台服务器的话(即源数据库与目标数据库在同一主机上),百万条数据也就是几十秒的时间搞定.该工具也支持将本地数据库或者表克隆到远程主机上. 程序比较简单,就一个Python文件,原理就是主要使用了MySQL的LOAD DATA INFILE命令.先来看下工具帮助信息

Python 开发工具和框架安装

引言: 其实之前对于 Python,只是知道有这门语言而已.大部分还是使用 .net 开发的,之前也学了 MVC+EF 开发,但是由于工作上完全用不到,也就没有在博客记录学习的东西了. 最近又接触到了爬虫这项技术,然后了解到 Python 开发爬虫好像很厉害的样子.于是就来了兴趣,兴趣是一个重要的东西,于是就开始慢慢接触 Python 了. 然后就从最基本的配置开发环境什么的.突然发现做 .net 真的是很方便啊,开发环境根本就不用担心,windows 系统上只需要装上 Visual Studi

Python开发工具PyCharm个性化设置(图解)

Python开发工具PyCharm个性化设置,包括设置默认PyCharm解析器.设置缩进符为制表符.设置IDE皮肤主题等,大家参考使用吧. JetBrains PyCharm Pro 4.5.3 中文汉化专业版 授权:特别软件 类型:国外软件 语言:简体中文 大小:197.79 MB 日期:2015-07-10 环境:WinXP, Win2008, Win7, Win8 下载 1.设置默认PyCharm解析器: 操作如下: Python–>Preferences–>Project Interp

常用的十大Python开发工具

据权威机构统计,Python人才需求量每日高达5000+,但目前市场上会 Python 的程序员少之又少, 竞争小,很容易快速高薪就业.可能你并不太了解常用的十大Python开发工具都有哪些,现在告诉你. 1.Micro Python Micro Python基于ANSI C,语法跟Pyton 3基本一致,拥有自家的解析器.编译器.虚拟机和类库等.目前支持基于32-bit的ARM处理器,比如说STM32F405. 借助它,用户完全可以通过Python脚本语言实现硬件底层的访问和控制,如控制LED