简介:Python Fire是谷歌开源的一个第三方库,用于从任何Python对象自动生成命令行接口(CLI),可用于如快速拓展成命令行等形式。
优势:
Python Fire是一个库,用于从任何Python对象自动生成命令行接口(CLI)。
PythonFire是在Python中创建CLI的简单方法。
PythonFire是开发和调试Python代码的有用工具。
Python Fire有助于探索现有代码或将其他人的代码转换为CLI。
PythonFire使Bash和Python之间的转换更加容易。
Python Fire通过使用已经导入和创建的模块和变量设置REPL,
使用PythonREPL变得更容易。
历史攻略:
安装:
pip install fire
案例:
# -*- coding: utf-8 -*-
# time: 2022/10/22 10:30
# file: fire_demo.py
# 公众号: 玩转测试开发
import fire
import datetime
import asyncio
def hello(name="World"):
print(f"Hello {name}!")
class Calculator(object):
"""A simple calculator class."""
def double(self, number):
return 2 * number
async def f1(name):
await asyncio.sleep(0.5)
print(f"{str(datetime.datetime.now())}: {name} run.")
def main(workers, loop=1, name="tom"):
for i in range(loop):
tasks = [f1(name) for i in range(workers)]
asyncio.run(asyncio.wait(tasks))
if __name__ == '__main__':
# fire.Fire(hello)
# fire.Fire(Calculator)
fire.Fire(main)
hello函数运行结果:
python hello.py # Hello World!
python hello.py --name=Tom # Hello Tom!
python hello.py --help # Shows usage information.
double函数运行结果:
main函数运行结果:
即:通过fire模块,可以快速高效的生成命令行接口,大大提高开发效率,不愧为高star项目,比click模块好用不少。