我正在使用接受名稱作爲輸入的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!