La bibliothèque Click
Créer des CLI avec des décorateurs
La bibliothèque Click est une leçon Python Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Python Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Python Academy comprend 4 leçons au total.
Qu'est-ce que Click ?
Click est une bibliothèque tierce populaire pour créer des interfaces en ligne de commande à l'aide de décorateurs. Elle gère l'analyse, le texte d'aide, les invites et les couleurs avec très peu de code. Installez-la avec pip install click.
import click
@click.command()
def hello():
click.echo('Hello from Click')
# hello() would run when called as a scriptclick.echo
Utilisez click.echo() plutôt que print. Cette fonction gère les problèmes d'encodage et fonctionne harmonieusement avec les fonctions de Click liées aux couleurs et à la redirection.
import click
@click.command()
def greet():
click.echo('Welcome!')
Arguments
Le décorateur @click.argument déclare un argument positionnel obligatoire que Click transmet à votre fonction sous forme de paramètre.
import click
@click.command()
@click.argument('name')
def hello(name):
click.echo('Hello ' + name)
Options
@click.option définit des options facultatives. Fournissez une valeur par défaut et Click génère automatiquement le texte d'aide et la gestion des types.
import click
@click.command()
@click.option('--count', default=1, help='Number of greetings')
def hello(count):
for _ in range(count):
click.echo('Hi')
Options typées
Click déduit le type à partir de la valeur par défaut, ou vous pouvez le définir explicitement avec type=int. Une entrée incorrecte produit une erreur conviviale.
import click
@click.command()
@click.option('--age', type=int, default=0)
def show(age):
click.echo('Age is ' + str(age))
Options booléennes
Une option avec is_flag=True devient un commutateur activé lorsqu'il est présent, comme --verbose.
import click
@click.command()
@click.option('--shout', is_flag=True)
@click.argument('text')
def say(shout, text):
click.echo(text.upper() if shout else text)
Invites
Définissez prompt=True et Click interrogera interactivement l'utilisateur si l'option n'a pas été fournie sur la ligne de commande.
import click
@click.command()
@click.option('--name', prompt='Your name')
def hello(name):
click.echo('Hello ' + name)
Groupes de commandes
@click.group crée une commande parente qui contient des sous-commandes, l'équivalent Click des sous-analyseurs d'argparse. Les sous-commandes s'y rattachent avec @cli.command().
import click
@click.group()
def cli():
pass
@cli.command()
def start():
click.echo('starting')
@cli.command()
def stop():
click.echo('stopping')
Sortie en couleur
click.style entoure le texte de couleur et de mise en forme, tandis que click.secho combine l'affichage et la mise en forme en un seul appel.
import click
@click.command()
def status():
click.secho('OK', fg='green', bold=True)
click.secho('Error', fg='red')
Confirmation et sortie
click.confirm pose une question par oui ou non ; lever click.Abort ou retourner une valeur termine la commande proprement.
import click
@click.command()
def delete():
if click.confirm('Are you sure?'):
click.echo('deleted')
else:
click.echo('cancelled')
argparse ou Click
argparse est intégré à Python et convient parfaitement aux outils simples. Click est une dépendance externe, mais propose pour les CLI plus importantes un style à base de décorateurs plus clair, des groupes imbriqués, des invites et des couleurs prêtes à l'emploi.
import click
@click.command()
@click.argument('items', nargs=-1)
def show(items):
for item in items:
click.echo(item)
Vérification rapide
Vérifiez votre compréhension de Click.
Récapitulatif
Vous avez découvert la bibliothèque Click :
- Les décorateurs
@click.command,@click.argumentet@click.optiondéfinissent une CLI. click.echoetclick.sechoaffichent du texte, éventuellement en couleur.@click.groupcrée des sous-commandes imbriquées ; les invites et les confirmations sont intégrées.- Il s'agit d'une dépendance externe installée avec pip.
Suite : mettre en forme la sortie du terminal avec rich.
Questions Fréquemment Posées
La leçon « La bibliothèque Click » est-elle gratuite ?
Oui — le texte complet de « La bibliothèque Click » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Python Academy, passe à CoddyKit PRO. Le cours Python Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « La bibliothèque Click » ?
Créer des CLI avec des décorateurs Tu pratiques Python Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Python Academy ?
Aucune expérience préalable n'est requise. Python Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « La bibliothèque Click » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Python Academy ?
Oui. Chaque leçon Python Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Les bases d’argparse
- Sous-commandes et options
- La bibliothèque Click
- Sortie riche dans le terminal