最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • python如何打印一个对象的全部属性

    正文概述    2020-07-25   259

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

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

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

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

    class Teacher(object):
        display = "教师"  # 有公有属性
        def __init__(self,name,age,course,salary):
            self.name = name
            self.age = age
            self.course = course
            self.__salary = salary  # 也有私有属性
    # 在定义一个别的类
    class Student(object):
        display = "学生"
        def __init__(self,name,sid,classes,score):
            self.name = name
            self.sid = sid
            self.calssed = classes
            self.__score = score
    def print_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如何打印一个对象的全部属性

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元