重新生成命令行界面。
bacli的Python项目详细描述
巴克利
重新生成命令行界面。
bacli是一个模块,它包装了argparse的命令行参数解析功能,以便于使用。任何python函数都可以转换为程序的入口点。只需添加bacli.command
decorator,就可以直接从命令行调用函数(使用参数、文档和正确的类型!).
使用量
""" example.py: This file serves as a demonstration of the bacli functionality. """
import bacli
bacli.setDescription(__doc__)
@bacli.command
def run():
""" Run the model. """
print("Running")
@bacli.command
def train(iterations: int, batch_size: int=32):
""" Train the model. """
print("Training model")
print("{} iterations".format(iterations))
print("batch size of {}".format(batch_size))
然后可以如下使用:
> python example.py -h
usage: example.py [-h] subcommand ...
example.py: This file serves as a demonstration of the bacli functionality.
positional arguments:
subcommand Select one of the following subcommands:
run Run the model.
train Train the model.
optional arguments:
-h, --help show this help message and exit
> python example.py run
Running
> python example.py train -h
usage: example.py train [-h] [--batch_size BATCH_SIZE] iterations
Train the model.
positional arguments:
iterations type: int
optional arguments:
-h, --help show this help message and exit
--batch_size BATCH_SIZE
type: int, default=32
> python example.py train 10 --batch_size 64
Training model
10 iterations
batch size of 64
即将推出的功能
- 支持变量参数(*args和**kwargs)
- 参数支持文档
- 支持参数的别名(可以使用first leter作为快捷方式)