BaşlayınÜcretsiz Başlayın

HTML Oluşturucu

Anlık olarak bir web sayfası için HTML üreten bir betik yazıyorsun. Şu ana kadar, bir dize döndüren herhangi bir fonksiyona kalın veya italik etiketleri ekleyen iki dekoratör yazdın. Ancak, bu iki dekoratörün birbirine çok benzediğini fark ediyorsun. Bir sürü benzer dekoratör yazmak yerine, açılış ve kapanış etiketlerinin herhangi bir çiftini alabilen tek bir dekoratör, html() oluşturmak istiyorsun.

def bold(func):
  @wraps(func)
  def wrapper(*args, **kwargs):
    msg = func(*args, **kwargs)
    return '<b>{}</b>'.format(msg)
  return wrapper
def italics(func):
  @wraps(func)
  def wrapper(*args, **kwargs):
    msg = func(*args, **kwargs)
    return '<i>{}</i>'.format(msg)
  return wrapper

Bu egzersiz

Python'da Fonksiyon Yazımı

kursunun bir parçasıdır
Kursu Görüntüle

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

def html(open_tag, close_tag):
  def decorator(func):
    @wraps(func)
    def wrapper(*args, **kwargs):
      msg = func(*args, **kwargs)
      return '{}{}{}'.format(open_tag, msg, close_tag)
    # Return the decorated function
    return ____
  # Return the decorator
  return ____
Kodu Düzenle ve Çalıştır