ตรวจสอบว่าออบเจ็กต์มีแอตทริบิวต์หรือเมธอดหรือไม่ โดยใช้การค้นหาแอตทริบิวต์ตามปกติของ DSL และไม่เรียกเมธอด
รูปแบบคำสั่ง
hasattr(object, name, /)พารามิเตอร์
| ชื่อ | คำอธิบาย |
|---|---|
objectAny | ออบเจ็กต์หรือเนมสเปซที่ต้องการตรวจสอบ จำเป็น · ระบุตามตำแหน่งเท่านั้น ไม่มีค่าเริ่มต้น |
nameString | ชื่อแอตทริบิวต์หรือเมธอด หากไม่ใช่สตริงจะเกิด TypeError จำเป็น · ระบุตามตำแหน่งเท่านั้น ไม่มีค่าเริ่มต้น |
ค่าที่ส่งกลับ
Boolean — คืน True เมื่อมีแอตทริบิวต์ แม้ค่าจะเป็น None, False หรือ 0 คืน False เฉพาะเมื่อไม่มีแอตทริบิวต์ ส่วนข้อผิดพลาดอื่นระหว่างค้นหายังคงถูกรายงาน คีย์ของ dict ใช้กฎการเข้าถึงด้วยจุดของ DSLตัวอย่าง
# อ่านพิกัดเฉพาะเมื่อมีแอตทริบิวต์นั้น
value = Point(10, 20)
if hasattr(value, "x"):
print(value.x)
print(hasattr(value, "missing"))