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

ฟังก์ชัน Python จะคืนค่าฟังก์ชันได้อย่างไร


Python รองรับฟังก์ชั่นระดับเฟิร์สคลาส อันที่จริง ฟังก์ชันทั้งหมดใน python เป็นฟังก์ชันระดับเฟิร์สคลาส

Python อาจส่งคืนฟังก์ชันจากฟังก์ชัน เก็บฟังก์ชันในคอลเล็กชัน เช่น รายการ และโดยทั่วไปจะปฏิบัติต่อฟังก์ชันเหล่านี้เหมือนกับที่คุณทำกับตัวแปรหรืออ็อบเจ็กต์ใดๆ

กำหนดฟังก์ชันในฟังก์ชันอื่นและฟังก์ชันส่งคืนได้ทั้งหมด

โค้ดที่ให้มาทำงานใหม่ได้ดังนี้ เรากำหนดฟังก์ชันภายในฟังก์ชันและส่งคืนฟังก์ชันเหล่านี้

ตัวอย่าง

def f2(c, d):
    return c, d
def f1(a, b):
    c = a + 1
    d = b + 2
    return lambda: f2(c,d)
result = f1(1, 2)
print result
print result()

ผลลัพธ์

C:/Users/TutorialsPoint1/~.py
<function <lambda> at 0x0000000003041CF8>
(2, 4)