上一次我们推荐了使用 Go 语言的
命令行工具 CLI 生成框架:Cobra
,需要提前通过生成代码的方式,有一定的后期修改和维护成本。今天要推荐一个 Python 的命令行工具生成框架 google/python-fire
,非常的简洁和优雅。在我不知道这个框架之前我是通过如下简单的代码解决的。import sys def foo(): print 'foo' def bar(): print 'bar' def main(): foo() bar() if __name__ == '__main__': func = sys.argv[1] if len(sys.argv) == 2 else 'main' locals()[func]()
可以看出只能处理很简单的一些场景,而且不能处理命令行参数的传递。使用
google/python-fire
后问题都解决了,而且非常的简洁。import fire def hello(name="World"): return "Hello %s!" % name if __name__ == '__main__': fire.Fire(hello) # 通过命令行调用 $ python hello.py # Hello World! $ python hello.py --name=David # Hello David! $ python hello.py --help # Shows usage information.
通过该工具可以很方便的开发和调式 Python 代码,同时可以很容易将其他人的 Python 代码转换成 CLI 工具,使得和 Bash 集成变得更加的简单。另外这个工具是 Google 出品,当然必属精品,点击查看详细的
使用文档
。项目地址:
https://github.com/google/python-fire
推荐阅读
- 累死累活干不过做 PPT 的!程序员说:我们可以
- 一份友好支持远程工作的科技公司名单
- 有趣的在线钢琴演奏项目
今天的推荐不知道大家喜欢吗?如果你喜欢,请在文章底部留言和点赞,以表示对我的支持,你们的留言、点赞和转发关注是我持续更新的动力哦!
关注公众号:非著名程序员,对话框回复关键字 “1024”,免费领取独立开发者赚钱案例分享,助力程序员实现财务自由。