Python内置函数Type()函数一个有趣的用法

yipeiwu_com5年前Python基础

今天在网上看到type的一段代码 ,然后查了一下文档,才知道type还有三个参数的用法。

http://docs.python.org/2/library/functions.html

以前只是知道type可以检测对象类型。然后发现了一个有趣的用法。

复制代码 代码如下:

def println(self):
a = 1 + 1

print “%s,%s” % (self.aa, a)

A = type(‘A',(),{‘aa':'print a', ‘println': println})

a = A()

type(a)
Out[11]: __main__.A

a.println()
print a,2


第一个参数是类的名字,第二个元组是父类,第三个是属性。

哈哈,我觉得很好笑,虽然我函数里边第一个参数还是写的self,但是如果写一段代码都用这种方法定义类,然后再不注意类名的规范,代码会变的很难读。

相关文章

Python实现的简单读写csv文件操作示例

Python实现的简单读写csv文件操作示例

本文实例讲述了Python实现的简单读写csv文件操作。分享给大家供大家参考,具体如下: python中有一个读写csv文件的包,直接import csv即可 新建test.csv 1....

python Flask实现restful api service

一直在用node.js做后端,要逐步涉猎大数据范围,注定绕不过python,因此决定把一些成熟的东西用python来重写,一是开拓思路、通过比较来深入学习python;二是有目标,有动力...

详解Python中的日志模块logging

详解Python中的日志模块logging

许多应用程序中都会有日志模块,用于记录系统在运行过程中的一些关键信息,以便于对系统的运行状况进行跟踪。在.NET平台中,有非常著名的第三方开源日志组件log4net,c++中,有人们熟悉...

Python 互换字典的键值对实例

1.zip dic = {'a':1, 'b':2, 'c':3} dic_new = dict(zip(dic.values(), dic.keys())) print(dic_n...

Python bsddb模块操作Berkeley DB数据库介绍

bsddb模块是用来操作bdb的模块,bdb是著名的Berkeley DB,它的性能非常好,mysql的存储后端引擎都支持bdb的方式。这里简单介绍一些关于bsddb的使用方法。 bdb...