Python type() 函数

来自多维百科
跳到导航 跳到搜索

简要描述

type() 函数传入一个参数时,返回object的类型。 返回值是一个type对象,通常与object.__class__所返回的对象相同。

推荐使用 isinstance() 内置函数来检测对象的类型,因为它会考虑子类的情况。

传入三个参数时,返回一个新的 type 对象。 这在本质上是 class 语句的一种动态形式,name 字符串即类名并会成为 __name__ 属性;bases 元组包含基类并会成为 __bases__ 属性;如果为空则会添加所有类的终极基类 object。 dict 字典包含类主体的属性和方法定义;它在成为 __dict__ 属性之前可能会被拷贝或包装。

函数语法

以下是 type() 方法的语法:

一个参数时:

type(object)

三个参数时:

type(name, bases, dict)

参数说明

一个参数时:

  • object:对象的名称

三个参数时:

  • name -- 类的名称。
  • bases -- 基类的元组。
  • dict -- 字典,类内定义的命名空间变量。

返回值

  • 一个参数返回对象类型。
  • 三个参数,返回新的类型对象。

实例

以下展示了使用type()方法的实例:

一个参数时:

>>> print(type(9))
<class 'int'>
>>> type('DocsWiki')
<class 'str'>
>>> type([10])
<class 'list'>
>>> type({15:'zero'})
<class 'dict'>
>>> a = 5.5          
>>> type(a)==int    # 判断类型是否相等
False

三个参数时:

在pycharm里面输入:

class X(object):
    a = 5
A = type('A', (object,), dict(a=5))
print(A)

返回结果:

<class '__main__.A'>