Python type 的另一种用法
Python type 的另一种用法前言
Python 的 type 有两种用法。
第一种(只传入一个参数) 返回参数的类型。
第二种(传入三个参数) 会返回一个新的类型对象。
这里详细介绍第二种用法。
用法
type 的三个参数分别为:name, bases, dict
name 参数
它指定了新类的名称。
bases 参数
它指定了新类的父类(基类),以元组形式传入。
若 bases 参数为空,则父类(基类)默认为 object。
dict 参数
它指定了新类的类属性,若留空则无属性。
示例
# 1, 单纯的定义一个类
# 类名为 A, 父类为 object, 属性..
A = type('A', (object, ), {'isHandsome': True})
# 2, 一个有父类的类
A = type('A', (object, ), {'isHandsome': True})
B = type('B', (A, ), {'isClever': False})
C = type('C', (B, ), {})
# 注意!上面的这行代码不能这样写:
# C = type('C', (A, B, ), {})
# 这样会报错,因为有一个类和父类的父类重复了(A 和 B 的父类重复)
# 需要去掉A。
print(C.isHandsome, C.isClever)
# 3, 继承两个类
A = type('A', (), {})
D = type('D', (), {})
E = type('E', (A, D), {})
# 4, 一些没有什么用处的骚操作
# 借助字符串,你可以创造出一些名字特别的类..
A = type('BoCai\'s Class', (), {})
print(A)
页:
[1]