全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

python如何打印一个对象的全部属性

发布时间:2023-11-09 00:50:53
发布人:xqq

python打印对象的全部属性,可以使用__dict__方法。

遇到这样一个情况,要打印出一个对象的各种属性。但是不同对象的属性名都不一样,结构也不同,无法写一个代码来实现。然后我找到

了__dict__,使用这个属性,可以动态获取到对象的所有属性,不包括公用属性。

classTeacher(object):

display="教师"#有公有属性

def__init__(self,name,age,course,salary):

self.name=name

self.age=age

self.course=course

self.__salary=salary#也有私有属性

#在定义一个别的类

classStudent(object):

display="学生"

def__init__(self,name,sid,classes,score):

self.name=name

self.sid=sid

self.calssed=classes

self.__score=score

defprint_obj(obj):

"打印对象的所有属性"

print(obj.__dict__)

t1=Teacher("Jerry",36,"Python",20000)

s1=Student('Barry',12,"python01","B")

print_obj(t1)

print_obj(s1)

通过__dict__,就可以动态的获取到对象的全部属性。获得的是一个字典,属性名是字典的key,属性值是字典的value。从输出看,私有

属性也可以获得,只是不包括公有属性。

然后,如果只想要属性值的话,可以对字典再加工。复习一下字典的3个方法:

dict.items():用元祖来存放key和vlaue

dict.keys():只包含key

dict.values():只包含value

上面3个方法返回的都是一个可迭代对象,可以用for遍历,但不是迭代器,不能用next方法。

以上内容为大家介绍了python如何打印一个对象的全部属性,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

python培训

相关文章

python是什么意思啊

python是什么意思啊

2023-11-14
python库是什么意思

python库是什么意思

2023-11-14
python多进程取代多线程的探究

python多进程取代多线程的探究

2023-11-14
pythonGIL的原理

pythonGIL的原理

2023-11-14

最新文章

武汉新媒体行业公司排名

武汉新媒体行业公司排名

2023-11-01
武汉新媒体就业现状好吗

武汉新媒体就业现状好吗

2023-11-01
武汉全媒体行业发展现状及趋势

武汉全媒体行业发展现状及趋势

2023-10-31
武汉全媒体现状

武汉全媒体现状

2023-10-31
在线咨询 免费试学 教程领取