#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @Time : 2019/4/29 17:02
# @Author : 何胜金-heshengjin
# @Site :
# @File : type_test.py
# @Software: PyCharm
"""
type()使用
type() 函数是一个元类
可以看到,在 Python 中,类也是对象,你可以动态的创建类。
其实这也就是当你使用关键字 class 时 Python 在幕后做的事情,而这就是通过元类来实现的。
type和isinstance
type不会认为子类是父类的类型,不会考虑继承关系。isinstance会任务子类是父类的类型,考虑继承关系。
Type和Object
type为对象的顶点,所有对象都创建自type。
object为类继承的顶点,所有类都继承自object。
python中万物皆对象,一个python对象可能拥有两个属性,__class__ 和 __base__,
__class__ 表示这个对象是谁创建的,__base__ 表示一个类的父类是谁。
"""
def printHello(self,name='Py'):
print("printHello {}".format(name))
# 创建一个Hello类
Hello = type('aHello',(object,),dict(printHello=printHello))
h = Hello()
h.printHello(name="测试type定义的类的方法")
print(type(Hello))
print(type(h.__class__))
print(Hello.__name__)
print(h.__class__)
print("/")
print(object.__class__)
print(object.__base__)
08-31
355
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
06-14
1338
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
12-08
76
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交