美文网首页
Python基础语法8 对象和属性的使用

Python基础语法8 对象和属性的使用

作者: 琴匣自鸣 | 来源:发表于2019-11-29 11:06 被阅读0次

在Python中有一些方便于我们获取类信息或对象信息的类属性,如下

dog=Pet() 

dog.__dict__ 类的命名空间,会返回一个字典其中信息已键值对的形式存在,如果是 Pet.__dict__ 那么会返回与此类相关的所有信息,包括属性、方法、文档字符串等等。如果是dog.__dict__ 那么返回的字典只包括属性,并且静态属性只有重新赋值过才会在字典中显示

dog.__doc__类的文档字符串信息,如果未定义那么为None

Pet.__name__类名称,注意此属性只能给类使用

doc.__class__获取对象的类名

属性的增、删、改、查,在使用类和对象的使用过程中

1.增加&&修改,在使用时如果需要临时添加属性例如:dog = Pet() dog.age=10或setattr(dog,'age',10),如果age已存在那么这里仅仅靠是赋值,如果不存在那么这里就是则增加一个age属性并赋值为10;

2.删除,删除属性时两种情况(1)直接删除类属性 del Pet.name 或 delattr(Pet,'name') (2)删除对象属性 del dog.name 或 delattr(Pet,'name')

注意:如果为静态属性那么,建立对象后对象属性默认值为静态属性默认值 dog.name,但是当你给属性赋值时,此时实际上是抛去引用类的静态属性新建立一个对象自己的属性只是名字一样,当对象删除该属性时此时属性又会变成引用类静态属性(Pet.name),如果此时执行第二次对象属性删除那么会报错原因是此时引用的是类属性(Pet.name)而不是对象属性。但是如果第二次删除使用类属性删除那么,再输出会发现报错,原因是类属性也被删除类和对象中都不存在该属性。
    如果是动态添加的属性,那么执行删除后会立即删除属性

3.查询,查询是否包含此属性 hasattr(Pet,'name') 返回布尔值

4.获取值,dog.name 或者 getattr(dog,'name')

相关文章

  • Python基础语法8 对象和属性的使用

    在Python中有一些方便于我们获取类信息或对象信息的类属性,如下 dog=Pet() dog.__dict__ ...

  • day26-web前端

    1 基础语法(对象) 1.1什么是对象 对象-和python中的对象一样,拥有对象属性和对象方法 1.2创建对象 ...

  • week2 总结 - web前端

    01.基础语法(对象) 1.什么是对象(Object) - 和Python中的对象一样,有对象属性和对象方法。 2...

  • day24-课堂总结

    基础语法(对象) 1.什么是对象 - 和python中的对象一样,拥有属性和方法2.创建对象a.创建对象字面量...

  • day25-web前端

    1.基础语法(对象) 1.什么是对象(object) -和Python中的对象一样,有对象属性和对象方法2.创建对...

  • (26)day6-web前端

    6.1 基础语法(对象) 1.什么是对象:js中没有类,但是有对象;和python中的对象一样,拥有对象属性和方法...

  • Python从入门到精通

    Python语法的三个阶段 Python基础语法函数是编程 Python进阶语法面向对象编程 Python高级语法...

  • JAVA基础——面向对象三大特性:封装、继承、多态

    JAVA基础——面向对象三大特性:封装、继承、多态 封装 封装就是使用特殊的语法,对成员属性和成员方法进行包装,达...

  • 访问对象的属性和方法

    访问对象属性的语法是: objectName.propertyName //对象名.属性名 本例使用 String...

  • Python 学习笔记

    Python 学习笔记 Python 基础语法 Python是一种面向对象解释型计算机编程语言,语法简洁凝练,强制...

网友评论

      本文标题:Python基础语法8 对象和属性的使用

      本文链接:https://www.haomeiwen.com/subject/hzxjvftx.html