Penghias
Pelajari cara menggunakan penghias untuk mengubah suai atau melanjutkan fungsi
Penghias ialah pelajaran Python For Kids percuma di CoddyKit. Ini ialah pelajaran 1 daripada 5. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Python For Kids, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Python For Kids merangkumi sejumlah 5 pelajaran.
Pengenalan kepada decorator
Decorator ialah ciri berkuasa dalam Python yang membolehkan Anda mengubah suai tingkah laku fungsi atau kaedah. Decorator sering digunakan untuk menambahkan kefungsian pada fungsi tanpa mengubah suai kodnya.
Dalam pelajaran ini, Anda akan mempelajari maksud decorator, cara menggunakannya dan cara mencipta decorator sendiri.

Apakah Itu decorator?
Decorator ialah fungsi yang menerima fungsi lain sebagai input dan mengembalikan fungsi baharu dengan kefungsian tambahan. Ia sering digunakan bersama sintaks @decorator_name.
# Basic example of a decorator
def decorator(func):
def wrapper():
print("Before the function call")
func()
print("After the function call")
return wrapper
@decorator
def say_hello():
print("Hello!")
say_hello()Cara decorator Berfungsi
Apabila Anda menggunakan decorator, Python menggantikan fungsi asal dengan fungsi pembalut yang dikembalikan oleh decorator.
# How decorators work
def decorator(func):
def wrapper():
print("Wrapper called")
func()
return wrapper
@decorator
def greet():
print("Greetings!")
print(greet.__name__) # Outputs: wrapper
greet()Menggunakan decorator dengan Argumen
Decorator boleh berfungsi dengan fungsi yang menerima argumen menggunakan *args dan **kwargs dalam fungsi pembalut:
# Decorator for functions with arguments
def decorator(func):
def wrapper(*args, **kwargs):
print(f"Arguments: {args}, {kwargs}")
return func(*args, **kwargs)
return wrapper
@decorator
def add(a, b):
return a + b
print(add(3, 5))Menggabungkan Berbilang decorator
Anda boleh menggunakan berbilang decorator pada satu fungsi. Decorator tersebut digunakan mengikut susunan kemunculannya, dari atas ke bawah:
# Chaining multiple decorators
def decorator1(func):
def wrapper():
print("Decorator 1")
func()
return wrapper
def decorator2(func):
def wrapper():
print("Decorator 2")
func()
return wrapper
@decorator1
@decorator2
def greet():
print("Hello!")
greet()Mencipta Dekorator Berparameter
Dekorator berparameter menerima argumen dan membolehkan kefungsian yang lebih fleksibel:
# Parameterized decorator
def repeat(times):
def decorator(func):
def wrapper(*args, **kwargs):
for _ in range(times):
func(*args, **kwargs)
return wrapper
return decorator
@repeat(3)
def say_hello():
print("Hello!")
say_hello()Kes Penggunaan Lazim Dekorator
Dekorator biasanya digunakan untuk:
- Mencatat panggilan fungsi dan argumennya.
- Mengukur masa pelaksanaan fungsi.
- Kawalan akses (contohnya, menyemak kebenaran pengguna).
- Menyimpan hasil dalam cache untuk meningkatkan prestasi.
Dekorator Terbina dalam Python
Python menyediakan beberapa dekorator terbina dalam, termasuk:
@staticmethod: Mentakrifkan kaedah statik.@classmethod: Mentakrifkan kaedah kelas.@property: Mentakrifkan kaedah sifat.
Kesilapan Biasa dengan decorator
Berikut ialah beberapa kesilapan yang perlu dielakkan:
- Tidak mengekalkan nama dan docstring fungsi asal (gunakan
functools.wraps). - Menggunakan decorator tanpa keperluan untuk tugas yang mudah.
- Terlupa mengendalikan argumen dalam fungsi pembalut.
Apakah yang Telah Kita Pelajari?
Dalam pelajaran ini, anda telah mempelajari:
- Apakah penghias dan cara penghias berfungsi dalam Python.
- Cara mencipta dan menggunakan penghias asas, berparameter dan berantai.
- Kegunaan lazim dan penghias terbina dalam Python.
Syabas! Mari beralih ke topik seterusnya.

Pelajari Python dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 22
- Pelajaran
- 94
Soalan Lazim
Adakah pelajaran “Penghias” percuma?
Ya — teks penuh “Penghias” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Python For Kids, tingkat taraf kepada CoddyKit PRO. Kursus Python For Kids merangkumi sejumlah 5 pelajaran.
Apakah yang akan saya pelajari dalam “Penghias”?
Pelajari cara menggunakan penghias untuk mengubah suai atau melanjutkan fungsi Anda berlatih Python For Kids menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Python For Kids?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Python For Kids di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 5.
Berapa lamakah pelajaran “Penghias” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Python For Kids ini?
Ya. Setiap pelajaran Python For Kids menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Penghias
- Penjana
- Pengurus Konteks (Pernyataan with)
- Pemahaman Ringkas (Senarai, Set dan Kamus)
- Lelaran dan Boleh Diulang