ฟังก์ชัน callable() ใน Python เป็นส่วนหนึ่งของไลบรารีมาตรฐาน ซึ่งคืนค่า True หากออบเจ็กต์สามารถเรียกใช้งานได้ (callable) และคืนค่า False หากไม่สามารถเรียกใช้งานได้ ออบเจ็กต์ควรมีเมธอด __call__ เพื่อให้เป็น callable ตัวอย่างเช่น หากเราแค่ประกาศตัวแปรพร้อมค่า มันจะไม่ใช่ callable แต่ถ้าเราประกาศฟังก์ชัน มันจะกลายเป็น callable
ออบเจ็กต์ที่เป็น Callable
ด้านล่างเราประกาศฟังก์ชันซึ่งเป็น callable สามารถตรวจสอบได้โดยการเรียกฟังก์ชันจริง รวมถึงตรวจสอบผ่านฟังก์ชัน callable
ตัวอย่างโค้ด
def func_callable():
x = 3
y = 5
z = x ^ y
return z
# สร้างออบเจ็กต์ของ func_callable
res = func_callable
print(callable(res))
print(res)
# เรียกใช้ฟังก์ชัน
final_res = func_callable()
print(final_res)
ผลลัพธ์
การรันโค้ดข้างต้นจะได้ผลลัพธ์ดังนี้ -
True 6
ออบเจ็กต์ที่ไม่ใช่ Callable
ที่นี่เราเห็นโปรแกรมเดียวกันกับข้างต้นแต่ไม่ใช้ฟังก์ชัน เราใช้แค่ตัวแปรสำหรับการคำนวณ เมื่อพิมพ์ผลลัพธ์ เราจะเห็นว่าค่าตัวแปรไม่ใช่ callable
ตัวอย่างโค้ด
x = 3 y = 5 z = x ^ y print(callable(z)) print(z)
ผลลัพธ์
การรันโค้ดข้างต้นจะได้ผลลัพธ์ดังนี้ -
False 6