hasattr() 是否有属性

最后更新:2026-09-22

hasattr() 是否有属性

hasattr(obj, name) 判断 obj 是否有名为 name 的属性。

分类内置函数
类型内置函数
Python 版本all

📝 语法

hasattr(object, name)

⚙️ 参数

object 必选要检查属性的对象(可为任意对象)。
name 必选属性名字符串,如 'attr'。

返回值:返回布尔值:对象具有指定属性时为 True,否则为 False。

💥 异常

▶ 示例

编辑下方代码,点击运行,在输出面板查看结果:

运行结果:

True
False
更多实战案例即将上线,敬请期待。

❓ 常见问题

Qhasattr(obj, 'x') 返回 True 说明什么?
A说明 obj 有名为 x 的属性(包括从父类继承的),但不保证它的值非 None,也不保证它可调用。
Qhasattr 和 getattr 有什么区别?
Ahasattr 只判断“有没有”返回布尔值;getattr 是“取出来”,属性不存在会抛 AttributeError(除非给了 default)。
Q属性名必须写死吗?
A不必,hasattr(obj, attr_name) 的属性名可以是变量,适合动态检查对象能力。
Qhasattr 能检查方法吗?
A能,方法也是属性,hasattr(obj, 'method_name') 返回 True;配合 callable() 可进一步确认可调用。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏