Python type

类型检测

我们在 数据类型 有稍微的提及过 type,它用于类型检测。

# 字符串类型
type('abc') # <class 'str'>

# type 类型
type(str) # <class 'type'>

换个角度

class A():
 pass

>>> a = A()
>>> type(a)
"<class '__main__.A'>" # a 来自于 A

>>> type(A)
"<class 'type'>" # 而 A 来自于 type

>>> type(type)
"<class 'type'>" # type 也自于 type

通过上面的关系,展示了 A创造了atype创造了Atype自己创造了自己,所有其实 type 就是 Python 的 万类之组


动态类

type可用做于类型检测,还能动态的创建类,因为本来所有的类就是经过它的手。

动态的意思就是能用代码根据配置自动生成。

# 动态创建一个白人的类
# 参数1、类名
# 参数2、父类
# 参数3、用字典的形式写入属性和方法
>>> Caucasian = type('Caucasian', (object,), {'color':'write', 'say': lambda x : 'haaa!'})

# 实例
>>> Job = Caucasian()
>>> Job.color
'write'
>>> Job.say()
'haaa'
更多教程 HTML5 教程 CSS3 教程 JavaScript 教程 JQuery 教程 React.js 教程 Node.js 教程 Koa2 教程 Python 教程 Linux 教程