Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

จะสร้าง chain of function decorators ใน Python ได้อย่างไร?


มัณฑนากรคือ "ตัวห่อหุ้ม" ซึ่งช่วยให้เราสามารถรันโค้ดก่อนและหลังฟังก์ชันที่ตกแต่งโดยไม่ต้องแก้ไขฟังก์ชันเอง

ตัวอย่าง

รหัสที่กำหนดสามารถรวมไว้ในห่วงโซ่ของนักตกแต่งได้ดังนี้

def makebold(fn):
    def wrapped():
        return "<b>" + fn() + "</b>"
    return wrapped
def makeitalic(fn):
    def wrapped():
        return "<i>" + fn() + "</i>"
    return wrapped
@makebold
@makeitalic
def hello():
    return "hello world"
print hello()

ผลลัพธ์

C:/Users/TutorialsPoint1/~.py
<b><i>hello world</i></b>

หากโค้ด html นี้ทำงานเหมือนในลิงก์ด้านล่าง เราจะได้ผลลัพธ์เป็น 'hello world' ตัวหนาและตัวเอียง