Python Academy · Ders

Click Kütüphanesi

Dekoratörlerle CLI'lar oluşturun

3. ders / 413 adım

Click Kütüphanesi, CoddyKit'te ücretsiz bir Python Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Python Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Python Academy kursu toplamda 4 dersten oluşur.

Click Nedir?

Click, dekoratörler kullanarak komut satırı arayüzleri oluşturmaya yarayan popüler bir üçüncü taraf kitaplığıdır. Çok az kodla ayrıştırmayı, yardım metnini, istemleri ve renkleri yönetir. pip install click ile yükleyin.

import click

@click.command()
def hello():
    click.echo('Hello from Click')

# hello() would run when called as a script

click.echo

print yerine click.echo() kullanın. Kodlama sorunlarını yönetir ve Click'in renk ve yeniden yönlendirme özellikleriyle sorunsuz çalışır.

import click

@click.command()
def greet():
    click.echo('Welcome!')

Bağımsız Değişkenler

@click.argument dekoratörü, Click'in işlevinize parametre olarak ilettiği gerekli bir konumsal bağımsız değişkeni bildirir.

import click

@click.command()
@click.argument('name')
def hello(name):
    click.echo('Hello ' + name)

Seçenekler

@click.option, isteğe bağlı seçenekleri tanımlar. Bir varsayılan değer sağlayın; Click yardım metnini ve tür yönetimini otomatik olarak oluşturur.

import click

@click.command()
@click.option('--count', default=1, help='Number of greetings')
def hello(count):
    for _ in range(count):
        click.echo('Hi')

Tür Belirtilmiş Seçenekler

Click, türü varsayılan değerden çıkarır; isterseniz türü type=int ile açıkça belirtebilirsiniz. Geçersiz giriş, anlaşılır bir hata oluşturur.

import click

@click.command()
@click.option('--age', type=int, default=0)
def show(age):
    click.echo('Age is ' + str(age))

Boole Seçenekleri

is_flag=True içeren bir seçenek, mevcut olduğunda doğru değerini alan bir anahtara dönüşür; --verbose buna örnektir.

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)

İstemler

prompt=True ayarlarsanız Click, seçenek komut satırında sağlanmadığında kullanıcıya etkileşimli olarak sorar.

import click

@click.command()
@click.option('--name', prompt='Your name')
def hello(name):
    click.echo('Hello ' + name)

Komut Grupları

@click.group, alt komutları barındıran bir üst komut oluşturur; argparse alt ayrıştırıcılarının Click'teki karşılığıdır. Alt komutlar @cli.command() ile eklenir.

import click

@click.group()
def cli():
    pass

@cli.command()
def start():
    click.echo('starting')

@cli.command()
def stop():
    click.echo('stopping')

Renkli Çıktı

click.style, metni renk ve biçimlendirmeyle sarar; click.secho ise tek bir çağrıda yankılama ile biçimlendirmeyi birleştirir.

import click

@click.command()
def status():
    click.secho('OK', fg='green', bold=True)
    click.secho('Error', fg='red')

Onaylama ve Çıkış

click.confirm, evet-hayır sorusu sorar; click.Abort hatası oluşturmak veya geri dönmek komutu düzgün şekilde sonlandırır.

import click

@click.command()
def delete():
    if click.confirm('Are you sure?'):
        click.echo('deleted')
    else:
        click.echo('cancelled')

argparse ve Click Karşılaştırması

argparse yerleşiktir ve basit araçlar için harikadır. Click harici bir bağımlılıktır; ancak daha büyük CLI'lar için daha temiz bir dekoratör biçimi, iç içe gruplar, istemler ve kullanıma hazır renkler sunar.

import click

@click.command()
@click.argument('items', nargs=-1)
def show(items):
    for item in items:
        click.echo(item)

Kısa Test

Click konusundaki anlayışınızı test edin.

Özet

Click kitaplığını öğrendiniz:

  • @click.command, @click.argument ve @click.option dekoratörleri bir CLI tanımlar.
  • click.echo ve click.secho, isteğe bağlı olarak renk kullanarak yazdırır.
  • @click.group iç içe alt komutlar oluşturur; istemler ve onaylamalar yerleşiktir.
  • Harici bir bağımlılıktır ve pip aracılığıyla yüklenir.

Sıradaki konu: rich ile terminal çıktısını biçimlendirme.

Başlamak ücretsiz

Yapay zeka eğitmeniyle Python öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
76
Dersler
320

Sıkça Sorulan Sorular

“Click Kütüphanesi” dersi ücretsiz mi?

Evet — “Click Kütüphanesi” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Python Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Python Academy kursu toplamda 4 dersten oluşur.

“Click Kütüphanesi” dersinde ne öğreneceğim?

Dekoratörlerle CLI'lar oluşturun Python Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Python Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Python Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Click Kütüphanesi” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Python Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Python Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. argparse Temelleri
  2. Alt Komutlar ve Seçenekler
  3. Click Kütüphanesi
  4. Zengin Terminal Çıktısı
← Python Academy Sayfasına Dön