优雅的使用Python之软件管理

上篇《》,如何管理python环境,有了一个干净的python环境之后,就不可避免的安装python软件包(python软件包丰富也是它的优点之一,不用重复造轮子)。本篇介绍如何优雅的管理Python软件包。

常用软件包管理工具

一般python软件包管理工具,主要有以下:

图 常用python包管理工具

可以看到distribute是setuptools的替代方案(因为Setuptools包不再维护了),pip是easy_install的替代方案。本篇重点介绍pip,其它感兴趣的自行了解。

pip最流行的软件包管理工具

pip的核心开发人员之一的Donald Stufft,去年写了一篇博客详细描述了PyPI CDN供应商4天的流量。其中一个纬度展示,使用软件包管理工具从PyPI安装软件包的用户中,大约75%的用户使用pip。该工具已被证明非常有用和流行,在2013年10月pip将被从3.4版本起,随python内置发布。

PyPI首页推荐的软件包安装方法:

安装

方法一:

lpython get-pip.py

D:\Python33>python get-pip.py

Downloading/unpacking pip

Downloading/unpacking setuptools

Installing collected packages: pip, setuptools

Successfully installed pip setuptools

Cleaning up...

方式二:源码方式安装

l解压

lcd到对应目录

lpython setup.py install

使用

l从安装软件包:$ pip install SomePackage[...]Successfully installed SomePackage

l查看软件包安装了哪些文件及路径等信息:$ pip show --files SomePackageName: SomePackageVersion: 1.0Location: /my/env/lib/pythonx.x/site-packagesFiles:../somepackage/__init__.py[...]

l查看哪些软件包已经有更新版本了:$ pip list --outdatedSomePackage (Current: 1.0 Latest: 2.0)

l升级软件包:$ pip install --upgrade SomePackage[...]Found existing installation: SomePackage 1.0Uninstalling SomePackage:Successfully uninstalled SomePackageRunning setup.py install for SomePackageSuccessfully installed SomePackage

l卸载软件包:$ pip uninstall SomePackageUninstalling SomePackage:/my/env/lib/pythonx.x/site-packages/somepackageProceed (y/n)? ySuccessfully uninstalled SomePackage

pip高级用法

前面小节介绍pip的基本功能使用,已经满足了绝大部分需求。下面介绍pip的一些高级用法:

l查询软件包$ pip search "query"

l列出安装的所有软件包$ pip list

l安装软件包的指定版本号

通过使用==, >=, <=, >, <来指定一个版本号$ pip install SomePackage# latest version$ pip install SomePackage==1.0.4# specific version$ pip install 'SomePackage>=1.0.4'# minimum version

l根据依赖文件安装软件包

想象一个场景,使用《》创建了一个感觉的虚拟环境,然后安装了一些依赖的软件包,开发出了应用APP。这个时候,你需要部署到服务器?

这个时候可以使用pip导出依赖文件列表,然后在服务器上根据依赖文件列表,自动安装对应的软件包。是不是很方便!

pip freeze > requirements.txt

pip install -r requirements.txt

相关连接:

python做的项目管理软件_幽雅的使用Python之软件管理相关推荐

  1. 用python做视觉检测系统_教你用 Python 做一个物体检测系统

    在本文中,我们将了解物体检测技术是什么以及可以用来解决此领域问题的几种不同方法,接着深入研究在Python中如何构建我们自己的对象检测系统.在本文结束时,您将拥有足够的知识来独自迎接不同的物体检测挑战 ...

  2. python零基础书推荐_零基础学习Python(Python初学者、Python入门)常见问题:资料、社区、书籍推荐...

    Python web开发 QQ学习群:338985564 ,欢迎各位加入,一起学习. 本文针对零基础的,想学习Python者.本文会不定时更新. 一.学会使用搜索引擎,尤其是Google. 推荐阅读文 ...

  3. python做审计底稿视频_最新Python教学视频,每天自学俩小时,让你offer拿到手软...

    2020最新Python零基础到精通资料教材,干货分享,新基础Python教材,看这里,这里有你想要的所有资源哦,最强笔记,教你怎么入门提升!让你对自己更加有信心,重点是资料都是免费的,免费!!! 如 ...

  4. python能开发什么产品_三周学 Python ?不,三周做个产品

    我的同事在看到毫无开发经验的我用三周时间,不但从零基础用上了 Python,还做出了一个客户关系管理系统,强烈邀请我分享经验.惶恐,因为我并没有出色的智商,也没有觉得三周学 Python 是一个体现自 ...

  5. python做自动化测试的优点_乐搏讲自动化测试-python语言特点及优缺点(5)

    相信小伙伴们都知道,随着软件测试行业的发展和进步自动化测试已经成为必然.在竞争日益激烈的市场环境中也是你升职加薪的利器. 所以,小编决定从今天起!将要系统.连续.高质量的持续更新「整套自动化测试」文章 ...

  6. python做作业没头绪_使用Python做作业

    python做作业没头绪 Applying OpenCV and Tesseract to do your math-homework 应用OpenCV和Tesseract进行数学作业 The pos ...

  7. python做网络的仿真_用python自动化仿真HFSS,超简易

    python是一款适用性极强的编程语言.一直期待HFSS(三维全波电磁场仿真的行业标准)能有python接口.后知后觉的本人才发现原来HFSS16(2015版本)已经不止支持VB脚本,还增加了pyth ...

  8. python做数据分析的包_用Python做数据分析,Numpy,Pandas,matp

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 用Python做数据分析,Numpy,Pandas,matplotlib是怎么也绕不开的三个包,我最开始学习pandas是看的<利用Python进行 ...

  9. python实战扫码下载_实例:用 Python 做一个扫码工具

    原标题:实例:用 Python 做一个扫码工具 来自公众号: 新建文件夹X 链接:https://blog.csdn.net/ZackSock/article/details/108610957Pyt ...

最新文章

  1. 面试官问:消息被重复消费,怎么避免?有什么好的解决方案?
  2. 北京奥运会闭幕式落下帷幕
  3. ssl1760-商店选址问题【图论,最短路】
  4. 计算机网络---HTTP状态码
  5. flex图表坐标轴样式设置
  6. se 类java_Java SE 9:可选的类改进
  7. 资料 |《深度学习500问》,川大优秀毕业生的诚意之作
  8. Linux下udev详细介绍
  9. Atitit  undac网络设备管理法案 (路由器 交换机等)    法案编号USRr101510
  10. Fail to convert to internal representation
  11. 传奇架设教程GOM引擎微端设置方法
  12. 北大青鸟网络工程师benet培训招生问答
  13. python怎么下载panda包_pandas python下载
  14. 盘点几个在手机上可以用来学习编程的软件
  15. matlab海底地形数据,海底地形建模器
  16. 问题解决:Ubuntu18.04版本始终无法动态获取IP地址
  17. docker安装和基本命令
  18. java无法下载jnlp_java-JNLP下载期间FileNotFoundException
  19. Elasticsearch 7.9 之 Frozen indices
  20. 云计算在美国的五年是如何发展的?

热门文章

  1. CTF Autokey加密
  2. Linux用extundelete恢复磁盘文件-攻防世界Recover-Deleted-File
  3. ajaxfileupload上传显示图片_有了这个AI图片转换器,风景照片秒变二次元动画
  4. Python变量本质
  5. python关于列表增加元素的几种操作
  6. Python操作excel文件根据某一字段将相同的类拆分
  7. python整数与IP地址转换
  8. python中函数重载和重写
  9. Django + DRF + Elasticsearch 实现搜索功能
  10. Python中国际化(i18n)完整指南