美文网首页胶水Python
类和模块的特殊属性和方法

类和模块的特殊属性和方法

作者: 爱折腾的大懒猪 | 来源:发表于2019-04-22 22:38 被阅读15次

Python一切皆对象(object),每个对象都可能有多个属性(attribute)。Python的属性有一套统一的管理方案。

  • 对象的属性可能来自于其类定义,叫做类属性(class attribute)。 类属性可能来自类定义自身,也可能根据类定义继承来的。
  • 一个对象的属性还可能是该对象实例定义的,叫做对象属性(object attribute)。
  • 对象的属性储存在对象的__dict__属性中。__dict__为一个词典,键为属性名,对应的值为属性本身。

判断对象是否有指定属性:

  1. hasattr(obj,attr): 返回真假(通过getattr异常与否来实现)
  2. dir(obj): 列出对象现有属性
  3. 通过try: obj.attr_name; except AttributeError: pass

属性

  • __doc__: 帮助说明, 将字符串写在对象定义声明之下.
  • __module__: 模组名,就是文件的名字(无后缀)部分
  • __class__: 返回对象的类信息
  • __dict__: 储存对象属性/方法的字典.
  • __slots__: 设置一个元组,限定允许绑定的属性名称(不能动态添加以外的属性). 只能对当前类起效, 对子类不起效(除非在子类中也定义__slots__,这样,子类允许定义的属性就是自身的__slots__加上父类的__slots__。)

方法

相关文章

  • 类和模块的特殊属性和方法

    Python一切皆对象(object),每个对象都可能有多个属性(attribute)。Python的属性有一套统...

  • Python学习笔记5

    面向对象 类和对象的创建 属相相关 方法相关 元类 内置的特殊属性 内置的特殊方法 面向对象 类和对象的创建 类 ...

  • python 模块

    容器 --- 数据的封装函数 ---语句的封装类 --- 方法和属性的封装模块 --- 模块就是程序 导入模块 ...

  • python基础-day3

    python xx的定义和用处 python 对象的特殊属性和方法 类属性可以来自类自定义自身,也可能根据类定义继...

  • VBA第七讲VBE编辑器

    工程模块,可以插入类模块,窗体,类模块。窗体可以插入按钮和模块。 属性窗口,随着选取工程窗口的元素,属性窗口就会显...

  • python 类属性和类方法

    类属性和类方法 目标 类的结构 类属性和实例属性 类方法和静态方法 01. 类的结构 1.1 术语 —— 实例 使...

  • ES5、ES6继承

    ES5、ES6继承方式 继承的目标: 父类公有属性和方法为子类公有属性和方法父类私有属性和方法为子类私有属性和方法...

  • React/React Native 的ES5 ES6写法对照表

    模块 引用 导出单个类 定义组件 给组件定义方法 定义组件的属性类型和默认属性 初始化STATE 把方法作为回调提...

  • Python中类的特殊属性和方法

    1. 特殊属性 1.1__slots__ 先说下slots的作用,slots的作用是规定类中的属性。直接来个例子:...

  • python中OOP的类属性和方法与多态

    目录 类的结构 类属性和实例属性 类方法和静态方法 多态 私有属性和私有方法 01. 类的结构 1.1 术语 ——...

网友评论

    本文标题:类和模块的特殊属性和方法

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