我是靠谱客的博主 酷炫期待,最近开发中收集的这篇文章主要介绍cmd查看python库命令_[CmdTree] 又一个 Python 命令行库,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

CMDTree

因为之前做一个需求,遇到需要大量使用子命令( sub-command )和命令行自动生成的功能,现有的库都不能良好的满足需求,所以自己写了这个库。

如果有以下业务场景,你大概是这个库的目标用户:)

需要分类子命令到不同命令组内

希望click装饰器不会影响原有的函数调用

不希望直接使用 argparse 的低层 API ( what a pain!)

希望能根据描述生成CRUD REST-API 的命令行调用

特性

为子命令和命令行自动生成而设计

使用类click的装饰器写命令行

友好的低层 API ,可以用["docker", "run"]这样的方式来添加命令

仅依赖six

支持 Python3

支持类 click 的 argument type 且可拓展

装饰器对函数调用本身没有副作用

请轻拍:)

CMDTree

安装

pip install cmdtree

Quick Start

Hello world

from cmdtree import INT

from cmdtree import command, argument, option

@argument("host", help="server listen address")

@option("reload", is_flag=True, help="if auto-reload on")

@option("port", help="server port", type=INT, default=8888)

@command(help="run a http server on given address")

def run_server(host, reload, port):

print(

"Your server running on {host}:{port}, auto-reload is {reload}".format(

host=host,

port=port,

reload=reload

)

)

if __name__ == "__main__":

from cmdtree import entry

entry()

Get help

➜ examples git:(master) python command.py --help

usage: command.py [-h] {run_server} ...

positional arguments:

{run_server} sub-commands

run_server

optional arguments:

-h, --help show this help message and exit

Run command

➜ examples git:(master) python command.py run_server localhost

Your server running on localhost:8888, auto-reload is False

SubCommand of SubCommand

Code here:

from cmdtree import group, argument, entry

@group("docker")

@argument("ip")

def docker():

pass

# nested command

@docker.command("run")

@argument("container-name")

def run(ip, container_name):

print(

"container [{name}] on host [{ip}]".format(

ip=ip,

name=container_name,

)

)

# nested command group

@docker.group("image")

def image():

pass

@image.command("create")

@argument("name")

def image_create(ip, name):

print(

"iamge {name} on {ip} created.".format(

ip=ip,

name=name,

)

)

if __name__ == "__main__":

entry()

Run command:

➜ examples git:(master) python command_group.py docker localhost image create your-docker

iamge your-docker on localhost created.

最后

以上就是酷炫期待为你收集整理的cmd查看python库命令_[CmdTree] 又一个 Python 命令行库的全部内容,希望文章能够帮你解决cmd查看python库命令_[CmdTree] 又一个 Python 命令行库所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部