浅谈Python type的使用

yipeiwu_com6年前Python基础

判断类型

在Python中我们可以使用type进行类型的判断

#我们想看一个对象的的类型可以这样
class A:
  pass
a = A()

type(a) == A #True
#type(obj) 会返回创建a的类型

创建对象

#这个简单,因为type会返回对象的类型,我们可以通过返回的类型创建对象
type(a)()#如果构造函数有参数则应传递相应参数

#上述语句可以分解为

A = type(a)
A()

创建类

看到创建类这个词的时候不知道type使用的朋友会问type怎么能创建类?下面我们介绍使用type创建类

#type(classname,(parents,...),{attribute})
#第一个参数classname是类名,第二个是一个父类元组,没有可填空元组,第三个参数是类属性字典。

O = type("O",(),{'a':1}) #<class 'O'>

a = O()
a.a #1
'''
上述代码可以翻译为
class O:
 a=1

a = O()
a.a
'''

以上这篇浅谈Python type的使用就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python RabbitMQ 使用详细介绍(小结)

上节回顾 主要讲了协程、进程、异步IO多路复用。 协程和IO多路复用都是单线程的。 epoll  在linux下通过这个模块libevent.so实现 gevent&n...

Python算法的时间复杂度和空间复杂度(实例解析)

算法复杂度分为时间复杂度和空间复杂度。 其作用: 时间复杂度是指执行算法所需要的计算工作量; 而空间复杂度是指执行这个算法所需要的内存空间。 (算法的复杂性体现在运行该算法时的计算...

解决django-xadmin列表页filter关联对象搜索问题

环境:xadmin-for-python3 python3.5.2 django1.9.12 问题描述:Product ProductSku两个实体,ProductSku FK外键关联P...

Python 从subprocess运行的子进程中实时获取输出的例子

有些时候,我们需要将某些程序放到子进程中去运行,以达到整合系统的目的。在Python中,一个非常好的选择就是使用subprocess模块,本模块为开辟子进程去执行子程序提供了统一的接口,...

利用python脚本如何简化jar操作命令

前言 本篇和大家分享的是使用python简化对jar包操作命令,封装成简短关键字或词,达到操作简便的目的。最近在回顾和构思shell脚本工具,后面一些文章应该会分享shell内容,希望大...