python遍历并获取对象属性--dir(),__dict__,getattr,setattr

Posted moisiet

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python遍历并获取对象属性--dir(),__dict__,getattr,setattr相关的知识,希望对你有一定的参考价值。

一、遍历对象的属性:

1.dir(obj) :返回对象的所以属性名称字符串列表(包括属性和方法)。

for attr in dir(obj):

    print(attr)

2.obj.__dict__:返回对象的属性名称和值键值对或者方法名称和方法对象(可以调用)键值对。

dir函数和__dict__属性基本上所有的对象(模块,类)都能够使用,dir()返回的是__dict__返回的父集合。

二、获取或设置属性

getattr(obj,name) //返回属性值或者函数对象,如果是name是函数名称,则可以加括号调用,即getattr(obj,name)()调用函数name。

setattr(obj,name,value)//相当于obj.name=value赋值语句

三,遍历对象属性,然后调用函数或设置值

以上是关于python遍历并获取对象属性--dir(),__dict__,getattr,setattr的主要内容,如果未能解决你的问题,请参考以下文章

python的dir()和__dict__属性的区别

python __dict__ 跟 dir()的区别

Python 查看对象属性的几种方式: __dict__, dir(), vars(), locals()

Python __dict__与dir()区别

Python魔术方法

python学习笔记011——内置函数dir()