CodeBlanks Logo Icon CodeBlanks

Birleştirme

Yardımcı metotları tek sınıfta birleştirirsin.

Birleştirme

Son derste üç yardımcı metodu bir arada çağıracağız. slugify dizgeleri, clamp sayıları, format_date tarihleri düzenler. Tek bir Utility örneği üzerinden hepsi çalışır.

Bir örnek oluşturup üç metodu sırayla çağıracağız: u = Utility(), u.slugify(...), u.clamp(...), u.format_date(...). Her çağrı bir satır çıktı verir. Böylece kütüphanenin çalıştığını görmüş oluruz.

Üç yardımcıyı sırala

Üç yardımcıyı art arda çağırıp her birinin sonucunu ayrı satırda yazdıracağız. Her print çağrısı bir satır üretir; sıralama senin elinde.

Örnek çıktı: merhaba-dünya, 10, 2024-05-01. Bu üç satır, kütüphanenin üç farklı yardımcısının doğru çalıştığını gösterir. Her metot farklı bir türle (dizge, sayı, tarih) ilgilenir ama aynı örnek üzerinden çağrılır.

Uygulama Üç yardımcıyı birleştir

Var olan Utility sınıfını koru. u = Utility() örneği üzerinden üç yardımcıyı sırayla çağır: print(u.slugify("Merhaba Dünya")), print(u.clamp(15, 0, 10)) ve print(u.format_date(2024, 5, 1)).

Başlangıç kodu

main.py
class Utility:
    version = "1.0"
    def slugify(self, text):
        return text.lower().replace(" ", "-")
    def clamp(self, n, lo, hi):
        return max(lo, min(hi, n))
    def format_date(self, year, month, day):
        return f"{year:04d}-{month:02d}-{day:02d}"

u = Utility()
print(u.format_date(2024, 5, 1))
# Tüm yardımcıları sırayla çağır

Örnek çözüm

main.py
class Utility:
    version = "1.0"
    def slugify(self, text):
        return text.lower().replace(" ", "-")
    def clamp(self, n, lo, hi):
        return max(lo, min(hi, n))
    def format_date(self, year, month, day):
        return f"{year:04d}-{month:02d}-{day:02d}"

u = Utility()
print(u.slugify("Merhaba Dünya"))
print(u.clamp(15, 0, 10))
print(u.format_date(2024, 5, 1))

Beklenen çıktı

merhaba-dünya
10
2024-05-01

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Bir Utility örneği üzerinde hangi çağrı çalışır?

  • u.slugify("Merhaba") Doğru cevap
  • Utility.slugify("Merhaba")
  • slugify("Merhaba")
  • u(Utility.slugify)

Açıklama: Örnek üzerinden u.metot() biçiminde çağrı yapılır.

2 Yardımcıları eşle

Kavram Anlamı
slugify Dizge yardımcı
clamp Sayı yardımcı
format_date Tarih yardımcı

3 slugify çağrısını tamamla

Soru
print(u.slugify(____))
Cevap
print(u.slugify("Merhaba Dünya"))

Açıklama: Dizge argümanı slugify'a gönderilir.

Orta seviye bölümündeki tüm dersler