Python fire模块(最简化命令行生成工具)的使用教程详解

 更新时间:2022年10月23日 11:11:55   作者:玩转测试开发  
Python Fire是谷歌开源的一个第三方库,用于从任何Python对象自动生成命令行接口(CLI),可用于如快速拓展成命令行等形式。本文将通过实例为大家详细说说fire模块的使用,感兴趣的可以了解一下

简介

Python Fire是谷歌开源的一个第三方库,用于从任何Python对象自动生成命令行接口(CLI),可用于如快速拓展成命令行等形式。

优势

Python Fire是一个库,用于从任何Python对象自动生成命令行接口(CLI)。

PythonFire是在Python中创建CLI的简单方法。

PythonFire是开发和调试Python代码的有用工具。

Python Fire有助于探索现有代码或将其他人的代码转换为CLI。

PythonFire使Bash和Python之间的转换更加容易。

Python Fire通过使用已经导入和创建的模块和变量设置REPL,

使用PythonREPL变得更容易。

历史攻略

Python:解析命令行参数

Python:装饰器click处理解析命令行参数

安装

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模块好用不少。

到此这篇关于Python fire模块(最简化命令行生成工具)的使用教程详解的文章就介绍到这了,更多相关Python fire模块内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 一文教你利用Python租到最合适的房子

    一文教你利用Python租到最合适的房子

    这篇文章主要为大家详细介绍了如何利用Python语言在爬取到房源数据后,挑选出符合自己要求的房子呢?感兴趣的小伙伴可以跟随小编一起学习一下
    2022-09-09
  • 教你怎么用Python实现自动生日祝福

    教你怎么用Python实现自动生日祝福

    这篇文章主要介绍了教你怎么用Python实现自动生日祝福,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好地帮助,需要的朋友可以参考下
    2021-05-05
  • pycharm远程连接docker容器的操作流程

    pycharm远程连接docker容器的操作流程

    这篇文章主要给大家介绍了pycharm远程连接docker容器的操作流程,文中通过代码示例和图文讲解介绍的非常详细,具有一定的参考价值,需要的朋友可以参考下
    2023-08-08
  • 使用Python脚本zabbix自定义key监控oracle连接状态

    使用Python脚本zabbix自定义key监控oracle连接状态

    这篇文章主要介绍了使用Python脚本zabbix自定义key监控oracle连接状态,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • Python实现PDF转Word的方法详解

    Python实现PDF转Word的方法详解

    由于PDF的文件大多都是只读文件,有时候为了满足可以编辑的需要通常可以将PDF文件直接转换成Word文件进行操作。本文为大家整理了一些实现方法,希望对大家有所帮助
    2023-02-02
  • python获取指定日期范围内的每一天,每个月,每季度的方法

    python获取指定日期范围内的每一天,每个月,每季度的方法

    这篇文章主要介绍了python获取指定日期范围内的每一天,每个月,每季度的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Python 如何读取字典的所有键-值对

    Python 如何读取字典的所有键-值对

    这篇文章主要介绍了Python 读取字典的所有键-值对操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • Python 中的结构模式匹配及重要性

    Python 中的结构模式匹配及重要性

    这篇文章主要介绍了Python 中的结构模式匹配,本篇文章介绍结构模式匹配及其在 Python 中的重要性,它还使用不同的模式来演示如何使用 match … case 语句,需要的朋友可以参考下
    2023-06-06
  • Python PaddleNLP实现自动生成虎年藏头诗

    Python PaddleNLP实现自动生成虎年藏头诗

    这篇文章主要介绍了利用Python PaddleNLP实现自动生成虎年藏头诗功能,文中的示例代码讲解详细,感兴趣的同学可以跟随小编一起试一试
    2022-01-01
  • python脚本使用阿里云slb对恶意攻击进行封堵的实现

    python脚本使用阿里云slb对恶意攻击进行封堵的实现

    这篇文章主要介绍了python脚本使用阿里云slb对恶意攻击进行封堵的实现,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02

最新评论