缺了几样

A 机器装了这些包,B 机器装了那些包。代码要的是 need。看看 B 缺几样、缺哪些: a = {"httpkit", "urlkit", "charkit", "te

开始练习 →

requirements.txt 的一行

依赖清单里写着 httpkit>=1.4,<2。这一行的意思是【0】。

开始练习 →

为什么不写死版本

清单里写 httpkit>=1.4,<2 而不是 httpkit==1.4.0,是因为【0】。

开始练习 →

谁装谁的依赖

贯穿全条的小仓库(五个假包): urlkit 1.9.0 2.0.0 2.1.0 charkit 4.0.0 5.1.0 httpkit 1.3.0 (要 urlkit<2, charkit<5) 1.4.0

开始练习 →

清单里的注释和空行

一份清单文件长这样: # 网络 httpkit>=1.4,<2 templ # 模板 读它的程序应该【0】。

开始练习 →

版本号比大小

(每道题开头都有同一段:parse_ver 把「1.4.0」变成能比大小的元组,satisfies(版本, 约束) 判一个版本满不满足「>=1.4,<2」这种约束,split_req 把「httpkit>=1.4」切成名字

开始练习 →

补全:约束满不满足

(每道题开头都有同一段:parse_ver 把「1.4.0」变成能比大小的元组,satisfies(版本, 约束) 判一个版本满不满足「>=1.4,<2」这种约束,split_req 把「httpkit>=1.4」切成名字

开始练习 →

补全:切开名字和约束

(每道题开头都有同一段:parse_ver 把「1.4.0」变成能比大小的元组,satisfies(版本, 约束) 判一个版本满不满足「>=1.4,<2」这种约束,split_req 把「httpkit>=1.4」切成名字

开始练习 →

补全:仓库里有哪些能用

(每道题开头都有同一段:parse_ver 把「1.4.0」变成能比大小的元组,satisfies(版本, 约束) 判一个版本满不满足「>=1.4,<2」这种约束,split_req 把「httpkit>=1.4」切成名字

开始练习 →

锁文件是什么

清单写的是范围(httpkit>=1.4,<2)。「锁文件」写的是【0】。

开始练习 →