image:: https://yourlabs.io/oss/cli2/badges/master/pipeline.svg
项目描述
cli2:Python 3的动态CLI
以简约的参数输入风格暴露Python函数或对象,或在运行时构建自己的命令。
演示
cli2是一个用于构建CLIs的小型库,其文档可在RTFD上查看,但它附带一个自己的演示命令,这可能会在探索Python库和即时调用函数时很有用。
因为,最初,cli2只是打算在CLI上提供Python可调用对象,甚至不需要一行代码。
cli2 path.to.your.callable arg1 kwarg1=value
此命令在此CLI引擎的第十次重写中再次实现,但是这个实现有一个很有趣的特点:cli2是一个Group子类,它根据命令行上传递的第一个参数覆盖了基于默认的Group实现。
基本上,当你调用cli2 path.to.module时,它将加载一个名为path.to.module的Group,该Group将加载path.to.module中的每个可调用对象的一个命令。
当你调用cli2 path.to.function时,它将执行该函数。
因此,这三个命令严格等价
cli2 cli2.test_node.example_function foo=bar cli2 cli2.test_node example_function foo=bar
这是因为cli2为前一个Group的每个成员生成一个组!
请自己看看
cli2 help cli2.test_node
或者只是
cli2 cli2.test_node
因为cli2.test_node不是一个可调用对象,而是一个模块,所以cli2的cli2 CLI动态创建了一个包含该模块的命令组,并将每个可调用成员添加为命令。
当你在命令行中调用一个组时,它默认显示帮助信息以引导用户。
项目详情
关闭
cli2-2.8.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 47b6955686cb8d3a95ebaa8ff0d9f0acbbbb9ec94546377171c2c4f3969feddc |
|
MD5 | 4b6c038e71dfd6f0e54eb39b47cff477 |
|
BLAKE2b-256 | 47fcff2cf7d4c1d3aa4a8551d49196195810e7a01f49421846b795438bcd75a1 |