相关疑难解决方法(0)

使用Click在python中创建命令行应用程序

我正在使用Click库创建一个命令行应用程序,该库接受名称作为输入,但如果没有输入名称,则返回默认值.

这是我到目前为止的代码.

hello.py

import click

@click.version_option(1.0)

@click.command()
@click.argument('string', default='World')
@click.option('-r', '--repeat', default=1, help='How many times should be greeted.')

def cli(string,repeat):
    '''This string greets you.'''
    for i in xrange(repeat): 
        click.echo('Hello %s!' % string)

if __name__ == '__main__':
    cli()
Run Code Online (Sandbox Code Playgroud)

当我运行它.

$你好

Hello World!
Run Code Online (Sandbox Code Playgroud)

$ hello Bob

Hello Bob!
Run Code Online (Sandbox Code Playgroud)

$ hello Bob -r 3

Hello Bob!
Hello Bob!
Hello Bob!
Run Code Online (Sandbox Code Playgroud)

这正是我想要的.

现在,我希望能够接受来自stdin的输入,如下面的示例所示.

$ echo John | 你好

Hello John!
Run Code Online (Sandbox Code Playgroud)

$ echo John | 你好-r 3

Hello John!
Hello John!
Hello John!
Run Code Online (Sandbox Code Playgroud)

python stdin command-line-arguments python-click

5
推荐指数
2
解决办法
3080
查看次数