Vivian Keith

Great people are not born with the great, but in the process of growing up show its great.

0%

前言

平常我们习惯了使用 pip 来安装一些第三方模块,这个安装过程之所以简单,是因为模块开发者为我们默默地为我们做了所有繁杂的工作,而这个过程就是**==打包==**。

打包,就是将你的源代码进一步封装,并且将所有的项目部署工作都事先安排好,这样使用者拿到后即装即用,不用再操心如何部署的问题(如果你不想对照着一堆部署文档手工操作的话)。

不管你是在工作中,还是业余准备自己写一个可以上传到 PyPI 的项目,你都要学会如何打包你的项目。

1. 分发包类型

1.1 二进制包

二进制包提前根据平台信息构建包,安装时省去了编译的过程,直接进行解压安装,所以安装速度较源码包来说更快。
由于不同平台的编译出来的包无法通用,所以在发布时,需事先编译好多个平台的包。
二进制包的常见格式有:

  • dumb
    包括:gztar(Unix默认),bztar,xztar,ztar,tar,zip(windows默认)
  • rpm
  • pkgtool
  • sdux
  • wininst
  • msi

wheel

wheel是python新的发行标准,旨在替代传统的egg,pip >=1.4的版本均支持wheel, 使用wheel作为你python库的发行文件,有如下好处:

阅读全文 »

学习的初始阶段,我们最好能找到领域内的高级知识,也就是被其他不同阶段的学习者反复消化过又输出的知识,这样的知识可以快速帮助我们建立起对领域全貌和通用概念的认知。

学习的中期,我们要能找到领域内的原始知识,也就是那些建立概念、提出方法、论证真伪的知识,这样的知识原汁原味地传达了领域内某种核心思想的缘起和沿革,某种伟大方法的构建和推演,某些基本体系的分析和综合,这是通向高阶学习的必经之路。毕竟不能一直咀嚼他人的反刍。

前两个阶段我们接触的严格意义上讲不叫做知识,而是信息,没有经过自身消化的内循环。

而学习的后期,我们成了高阶的学习者,对知识融会贯通之后的自然结果就是总结输出的欲望和开拓创新的热情。这个时候,我们才开始接触到尖端和前沿,我们才把真正把信息转化为知识。

我们知道的越多,我们越无知。

阅读全文 »