Python的程序结构[2] -> 类/class -> 类的特殊属性

类的特殊属性 / Special Property of Class



Python 中通过 class 进行类的定义,类可以实例化成实例并利用实例对方法进行调用。

类中还包含的一些共有的特殊属性。


特殊类属性


含义


__name__


类的名字(字符串)


__doc__


类的文档字符串


__bases__


类的所有父类组成的元组


__dict__


类的属性组成的字典


__module__


类所属的模块


__class__


类对象的类型

 1 class Foo():
 2     """
 3     This is the text that can be called by __doc__
 4     """
 5     def __init__(self):
 6         self.foo = None
 7
 8     def foo_method(self):
 9         self.foom = True
10
11 print(‘>>>‘, Foo.__name__)
12 print(‘>>>‘, Foo.__doc__)
13 print(‘>>>‘, Foo.__bases__)
14 print(‘>>>‘, Foo.__dict__)
15 print(‘>>>‘, Foo.__module__)
16 print(‘>>>‘, Foo.__class__)

上面的代码定义了一个 Foo 类,并对类的基本特殊属性依次进行调用,最后得到结果如下,

>>> Foo
>>>
    This is the text that can be called by __doc__

>>> (<class ‘object‘>,)
>>> {‘__dict__‘: <attribute ‘__dict__‘ of ‘Foo‘ objects>, ‘__doc__‘: ‘\n    This is the text that can be called by __doc__\n    ‘, ‘__weakref__‘: <attribute ‘__weakref__‘ of ‘Foo‘ objects>, ‘__init__‘: <function Foo.__init__ at 0x0301F930>, ‘__module__‘: ‘__main__‘, ‘foo_method‘: <function Foo.foo_method at 0x0305C348>}
>>> __main__
>>> <class ‘type‘>
时间: 2024-08-18 18:29:10

Python的程序结构[2] -> 类/class -> 类的特殊属性的相关文章

Python的程序结构(2) -&gt; 方法/Method -&gt; 静态方法、类方法和属性方法

静态方法.类方法和属性方法 在 Python 中有三种常用的方法装饰器(参考装饰器部分内容),可以使普通的类实例方法变成带有特殊功能的方法,分别是静态方法.类方法和属性方法. 静态方法 / Static Method 在 def 定义之前加上 @staticmethod 进行装饰,便可以使该方法成为静态方法,静态方法无法调用实例属性.静态方法可以通过实例或类进行调用.通常用于无需生成实例或无需共享实例属性的方法中,比如一些纯粹的数学公式计算等场合. 1 class Foo(): 2 @stati

Python的程序结构[2] -&gt; 类/Class -&gt; 内建类 bytes 和 bytearray

内建类 bytes 和 bytearray / Built-in Type bytes and bytearray 关于内建类 Python的内建类 bytes 主要有以下几点: class bytes([source[, encoding[, errors]]]) Return a new "bytes" object, which is an immutable sequence of integers in the range 0 <= x < 256. bytes

Python的程序结构[3] -&gt; 变量/Variable -&gt; LEGB 法则

LEGB法则 / LEGB Rule LEGB 变量搜索顺序 ---- 来源于<Python学习手册>/ Learning Python Page 419 ---- Python 的变量名解析机制称为  LEGB 法则. L – Local: 本地作用域; E – Enclosing: 上一层结构中 def 或 lambda 的本地作用域; G – Global: 全局作用域; B – Build-in: 内置作用域. LEGB作用域查找原则:当引用一个变量时,Python 按以下顺序依次进行

Python的程序结构[4] -&gt; 函数/Function -&gt; 匿名函数

匿名函数 / Anonymous Function 匿名函数是一种不需要绑定函数名的函数 (i.e. functions that are not bound to a name).匿名函数通过 lambda 表达式进行构建.常用于快速建立起一个(一次性的)函数. Note: lambda 是 Python 的一个表达式/关键字,类似 return,并非一个函数,而是能够生成匿名函数. 关于匿名函数的使用,可以用下面的方式,直接使用, 1 # Use directly 2 f = lambda

【Python】05、python程序结构控制语句

一.程序结构 程序结构:语句和表达式按照什么样的顺序执行 所有语言无非就三种程序结构:        顺序:默认结构 语句从上到下依次一行一行的执行,        分支:选择一个分支执行,永远最多只执行一个分支        循环: 二.分支结构语句 1.Python的比较操作 所有的Python对象都支持比较操作,可用于测试相等性.相对大小等 如果是复合对象,Python会检查其所有部分,包括自动遍历各级嵌套对象,直到可以得出最终结果 测试操作符: " =="操作符测试值的相等性

python之基础篇(七)——类与面向对象

防伪码:忘情公子著 面向对象编程(OOP) 程序 = 指令+数据 代码可以选择以指令为核心或以数据为核心进行编写. 两种范型: 以指令为核心:围绕"正在发生什么"进行编写 面向过程编程:程序具有一系列线性步骤.主体思想是代码作用于数据 以数据为核心:围绕"将影响谁"进行编写 面向对象编程(OOP):围绕数据及为数据严格定义的接口来组织程序,用数据控制对代码的访问 面向对象的核心概念 所有编程语言的最终目的都是提供一种抽象方法. 在机器模型("解空间&quo

C与python的调用一(导入python模块与,获得函数与类)

python是一门很优秀的脚本语言,语法简洁而清晰,具有丰富和强大的类库.它常被昵称为胶水语言,它能够很轻松的把用其他语言制作的各种模块. 但是python的界面设计我们并不是很熟悉(虽然他也有很多很好的且功能强大的类库,例如wxpython等,但是相比其他的GUI设计,我们可能更加 熟悉QT或者MFC,因此不太会选用python作为界面设计的工具),所以我们在很多情况下,很难在有界面需求的项目中使用python的GUI去设 计.但是这样并不意味着我们不能依靠python的高效,简洁去做一些东西

python学习笔记--面向对象的编程和类

一.面向对象的编程 面向对象程序设计--Object Oriented Programming,简称oop,是一种程序设计思想.二.面向对象的特性类:class类,对比现实世界来说就是一个种类,一个模型.一个类即是对一类拥有相同属性的对象的抽象.蓝图.原型.在类中定义了这些对象的都具备的属性(variables(data)).共同的方法. 对象:object对象,也就是指模型造出来的具体的东西.一个对象即是一个类的实例化后实例,一个类必须经过实例化后方可在程序中调用,一个类可以实例化多个对象,每

python基础之面向对象编程介绍、类和对象

面向对象变成介绍 面向过程编程 核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西.主要应用在一旦完成很少修改的地方,如linux内核.git.apache服务器等 优点:极大的降低了程序的设计复杂度 缺点:可扩展性差,改动一个地方很可能要改多个地方,牵一发而动全身 面向对象编程:不是编程的全部,只是用来解决软件可扩展性的 核心是对象(上帝式思维),对象作为程序的基本单元,一个对象包含了数据和操作数据的函数.面向对象就是把计算