@ symbol ใช้เพื่อกำหนดมัณฑนากรใน Python มัณฑนากรจัดเตรียมไวยากรณ์ง่ายๆ สำหรับการเรียกใช้ฟังก์ชันที่มีลำดับสูงกว่า ตามคำจำกัดความ มัณฑนากรคือฟังก์ชันที่ใช้ฟังก์ชันอื่นและขยายลักษณะการทำงานของฟังก์ชันหลังโดยไม่ต้องแก้ไขอย่างชัดเจน
เรามีมัณฑนากรสองประเภทใน Python:
- อุปกรณ์ตกแต่งฟังก์ชัน
- มัณฑนากร
มัณฑนากรใน Python คืออ็อบเจ็กต์ Python ที่เรียกใช้ได้ซึ่งใช้ในการแก้ไขฟังก์ชันหรือคลาส การอ้างอิงถึงฟังก์ชันหรือคลาสจะถูกส่งไปยังมัณฑนากร และมัณฑนากรส่งคืนฟังก์ชันหรือคลาสที่แก้ไข ฟังก์ชันหรือคลาสที่แก้ไขมักจะมีการเรียกใช้ฟังก์ชันดั้งเดิม
@decorator def f(argument): ….
จะแทนที่ f ด้วยมัณฑนากร(f):การเรียก f(argument) จะเทียบเท่ากับมัณฑนากร(f)(argument)