Google 出品:简洁优雅的 Python 命令行生成工具
收藏


【公众号回复 “1024”,免费领取程序员赚钱实操经验】

上一次我们推荐了使用 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

推荐阅读

今天的推荐不知道大家喜欢吗?如果你喜欢,请在文章底部留言和点赞,以表示对我的支持,你们的留言、点赞和转发关注是我持续更新的动力哦!

「GitHub精选」开始接受大家投稿啦

「GitHub精选」,每晚10:24准时为您推送

    公众号
    关注公众号订阅更多技术干货!