Python使用type关键字创建类步骤详解

yipeiwu_com7年前Python基础

Python使用type关键字创建类

打开命令行窗口,输入python,进入python交互环境

python

一般创建类使用class关键字即可,测试命令如下:

class Coo:

  pass

obj1 = Coo()

print (obj1)

c = Coo

obj2 = c()

print (obj2)

type关键字可以动态的创建类,接收参数(类名,父类元组,属性的字典),如创建一个类,没有父类,没有属性,命令如下:

Test = type('Test',(),{})

print (Test)

t = Test()

print (t)

接收type函数返回的变量可以是任意命令,传入type的才是类名,变量只是类的引用

使用type创建有属性的类,命令如下:

Test = type('Test2',(),{'hi':True})

print (Test)

print (Test.hi)

t = Test()

print (t.hi)

使用type创建并继承的类

Test3 = type('Test3',(Test,),{})

t = Test3()

print (t.hi)

使用type创建带实例方法的类,命令如下:

def echo(self):

  print (self.hi)

Test4 = type('Test4',(Test,),{'echo':echo})

hasattr(Test,'echo')

hasattr(Test4,'echo')

使用type创建带静态方法,命令如下:

@staticmethod

def staticm():

  print ('staticm')

Test5 = type('Test5',(Test,),{'echo':echo,'staticm':staticm})

t = Test5()

t.staticm()

使用type创建带类方法的类,命令如下:

@classmethod

def classm(cls):

  print (cls.hi)

Test6 = type('Test6',(Test,),{'echo':echo,'staticm':staticm,'classm':classm})

Test6.classm()

以上就是相关Python如何使用type关键字创建类的全部内容,感谢大家对【听图阁-专注于Python设计】的支持。

相关文章

python版本五子棋的实现代码

python版本五子棋的实现代码

正文之前 前阵子做了个《人工智能》 的课程作业,然后写了个人工智障。。。大概就是个可以跟你下五子棋的傻儿子。。。下面是代码和效果 正文 1、 摘要 机器博弈是人工智能领域的重要分支,它...

通过5个知识点轻松搞定Python的作用域

1、块级作用域 想想此时运行下面的程序会有输出吗?执行会成功吗? #块级作用域 if 1 == 1: name = "lzl" print(name) for i...

python中的文件打开与关闭操作命令介绍

1.文件打开与关闭 在python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件 open(文件名,访问模式)。 f = open('test.txt', 'w...

Python基于多线程实现ping扫描功能示例

本文实例讲述了Python基于多线程实现ping扫描功能。分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #! python2 import subp...

探寻python多线程ctrl+c退出问题解决方案

场景: 经常会遇到下述问题:很多io busy的应用采取多线程的方式来解决,但这时候会发现python命令行不响应ctrl-c 了,而对应的java代码则没有问题: 复制代码 代码如下:...