Флаги

Отдельный вид опций - это флаги. Для них не нужно указывать никакого конкретного значения, они либо есть, либо их нет. Во многих консольных приложениях используется флаг --verbose («многословный»). Давайте сделаем так, чтобы при наличии такого флага в консоль выводилось не только число, но и небольшое сообщение.

@click.command()
@click.option('--count', default=1, help='Количество чисел')
@click.option('--verbose', is_flag=True)
@click.argument('a')
@click.argument('b')
def cli(count, verbose, a, b):
    for i in range(count):
        rand = randint(int(a), int(b))
        if verbose:
            click.echo(f'Случайное число №{i + 1}: {rand}')
        else:
            click.echo(rand)

Теперь использовать скрипт можно так:

# "Многословно" генерируем 5 случайных чисел от 1 до 100
python main.py --verbose --count=5 1 100