补全:仓库里有哪些能用

👁️ 3 人浏览 💬 0 人评论 ❤️ 添加收藏

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

贯穿全条的小仓库(五个假包):

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 (要 urlkit<2, charkit>=4)   1.5.0 (要 urlkit>=2, charkit>=5)
templ    3.0.0  3.1.0
webapp   2.3.0 (要 httpkit>=1.3,<1.5, templ>=3)   3.0.0 (要 httpkit>=1.5, templ>=3.1)

补全 candidates(name, spec):从 REPO 里挑出满足约束的版本,按版本号从低到高排;仓库里没有这个包就交回空列表。

提交你的答案
请登录后提交答案。
去登录
代码编辑器
Ctrl + Enter 运行
本次输入:
输出:

                        
👩‍🏫
AI
💬 题目评论

全部评论