我正在使用接受名称作为输入的Click库在Python中创建命令行应用程序,但如果未输入任何名称,则会返回默认值。在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()
当我运行它。
$你好
Hello World!
$你好鲍勃
Hello Bob!
$你好鲍勃-r 3
Hello Bob!
Hello Bob!
Hello Bob!
这正是我想要的是。
现在,我希望能够像stdin一样接受来自以下示例的输入。
$ echo John |你好
Hello John!
$呼应约翰|你好-r 3
Hello John!
Hello John!
Hello John!