๐งช ่ฃ ้ฅฐๅจ
โฑ๏ธ 25-30 min๐ Advanced
main.py
Costs 1 credit
ๅ ่ฝฝ็ผ่พๅจไธญ...
่พๅบ Outputๆง่กๆๅ
# ่ฟ่กไปฃ็ ๅ๏ผ่พๅบๅฐๆพ็คบๅจ่ฟ้ # ๆ Ctrl+Enter ๅฟซ้่ฟ่ก
Terminal (Simulated)Install commands are simulated only, no real network requests
$
Step 1: ็่งฃ่ฃ ้ฅฐๅจๅ็
่ฃ ้ฅฐๅจๆฏโๅฝๆฐๅ ่ฃ ๅจโ๏ผไธๆนๅๅฝๆฐๆบ็ ๏ผไน่ฝๅจๅๅๆณจๅ ฅ่กไธบใ
ๅบๅฑ้ป่พ๏ผ
ไฝ ไผ ๅ ฅๅๅฝๆฐ
ๅ็ปญ่ฐ็จๅ ถๅฎๆง่ก็ๆฏ wrapper๏ผๅฎๅ ้จๅ่ฐ็จๅๅฝๆฐใ
ไฝ ไผ ๅ ฅๅๅฝๆฐ
func๏ผ่ฟๅๅ
่ฃ
ๅฝๆฐ wrapperใๅ็ปญ่ฐ็จๅ ถๅฎๆง่ก็ๆฏ wrapper๏ผๅฎๅ ้จๅ่ฐ็จๅๅฝๆฐใ
ไฝ ็ไปปๅก๏ผ
- ๅๅปบๅฝๆฐ
my_decorator(func) - ๅ
้จๅฎไน
wrapper()ๅฝๆฐ - wrapper ไธญๅ ่พๅบ "Before"๏ผๅ่ฐ็จ func()๏ผๆๅ่พๅบ "After"
- ่ฟๅ wrapper
- ๆต่ฏ๏ผๅฎไน
say_hello()่พๅบ "Hello!"๏ผ็จ่ฃ ้ฅฐๅจๅ ่ฃ ๅนถ่ฐ็จ
Self-Check List
- ็่งฃ่ฃ ้ฅฐๅจ็ๅบๆฌ็ปๆ
Transfer Template
def my_decorator(func):
def wrapper():After completing this step, you should be able to independently explain and reproduce this concept, then apply it to similar problems.