详解python中的⼀切
简介
Python项⽬中必须包含⼀个 ⽂件,⽤于记录所有依赖包及其精确的版本号。以便新环境部署。
主要的写法如下所⽰
pip freeze > # ⽣成
pip install - # 从安装依赖
⽀持的写法
- # 下⾯的所有包
pypinyin==0.12.0 # 指定版本(最⽇常的写法)
django-querycount>=0.5.0 # ⼤于某个版本
django-debug-toolbar>=1.3.1,<=1.3.3 # 版本范围
ipython # 默认(存在不替换,不存在安装最新版)
第三⽅⼯具⽣成
pip freeze 会附带上⼀些不需要的包,以及某些包依赖的包~
⾃动分析项⽬中引⽤的包。对Django项⽬⾃动构建的时候忽略了Mysql包,版本也很奇怪;⽽且联⽹搜索的时候遇到404就报错跳出了
功能同上,会显⽰包被项⽬⽂件引⽤的地⽅(搜索下就能解决的问题啊= =感觉是伪需求),404的问题也存在
通过第三⽅⽂件⽣成,讲道理为什么不直接写呢,要通过第三⽅包来做⼀层转换
推荐⽤法
⼀般项⽬会分为开发环境,测试环境,⽣产环境等……依赖的包会不同。推荐在⽂件夹下为每个环境建⽴⼀个⽂件。公有的包存在供引⽤
➜ meeting git:(sync) ✗ tree requirements -h
requirements
├── [ 286]
├── [ 80]
└── [ 28]
由于上⾯提到的⼯具并不好⽤~还是推荐⼿动维护依赖列表。毕竟pip安装后马上去编辑下依赖⽂件也不是什么⿇烦事setup.py 与 区别
setup.py 这个⽂件是⽤来管理模块的,你可以将你的项⽬打包为模块上传到 pypi 中,也同样能将项⽬作为模块放⼊python 的系统加载模块⽬录下。
python安装教程非常详细 这个⽂件是列举你这个项⽬引⽤了哪些⾮本项⽬的依赖的,除此之外,没有其他作⽤。
因此,可以看出这两个项⽬其实并没有冲突关系,⽽且有很⼤共存的必要。
1. 假如你的项⽬需要保存为系统模块,或者可安装为系统命令的 setup.py 就必不可少了
2. 假如你的项⽬是可以直接运⾏的,那么 也是必不可少。
3. 如果你两种功能都需要,那么就两个⽂件都不能少。
有这两种功能都需要的么?
必须有啊,⽽且还很多,例如 Flask,他就⽀持两种⽅式:
1. 以系统命令的⽅式启动,在 Flask 0.11.1 中新加⼊了⼀个 Click 包,他可以让你 setup 之后以命令的⽅式运⾏
2. 直接运⾏,传统的 Flask 启动⽅式⼀般就是 app.run() 或者 python manage.py runserver
总结
以上就是这篇⽂章的全部内容了,希望本⽂的内容对⼤家的学习或者⼯作能带来⼀定的帮助,如果疑问⼤家可以留⾔交流,谢谢⼤家对的⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论