Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

ClickをつかってPython製CLIツールをスマートにする その1:導入

実際のところ

$ conda install click

執筆時点ではclick 6.7が入ります

動作試験をしてみましょう。
公式のサンプルをそのままコピペしてきます。

import click

@click.command()
@click.option('--count', default=1, help='Number of greetings.')
@click.option('--name', prompt='Your name',
              help='The person to greet.')
def hello(count, name):
    """Simple program that greets NAME for a total of COUNT times."""
    for x in range(count):
        click.echo('Hello %s!' % name)

if __name__ == '__main__':
    hello()


動かしてみると、こんな感じ

$ python sample_click.py --count=3 --name shuzo
Hello shuzo!
Hello shuzo!
Hello shuzo!

"prompt"の値を設定したオプションは空にしておくと入力パートがでてきます。

$ python sample_click.py --count=3
Your name: shuzo
Hello shuzo!
Hello shuzo!
Hello shuzo!

ヘルプもデフォであります。
親切設計ですね。

$ python sample_click.py --help
Usage: sample_click.py [OPTIONS]

  Simple program that greets NAME for a total of COUNT times.

Options:
  --count INTEGER  Number of greetings.
  --name TEXT      The person to greet.
  --help           Show this message and exit.