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

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

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

以前只是知道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,但是如果写一段代码都用这种方法定义类,然后再不注意类名的规范,代码会变的很难读。

(0)

相关推荐

  • 深入理解python函数递归和生成器

    一.什么是递归 如果函数包含了对其自身的调用,该函数就是递归的.递归做为一种算法在程序设计语言中广泛应用,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量.例如,要计算1-9的9位数字的乘积,直观的算法是1*2*3*4*5*6*7*8*9,如果要计算1-10000的乘积,直观的算法就难于实现出,而递归就可以很简单的实现.请看示例: def fact(n):#计算给定数字到一的乘积 i

  • Python基础之函数用法实例详解

    本文以实例形式较为详细的讲述了Python函数的用法,对于初学Python的朋友有不错的借鉴价值.分享给大家供大家参考之用.具体分析如下: 通常来说,Python的函数是由一个新的语句编写,即def,def是可执行的语句--函数并不存在,直到Python运行了def后才存在. 函数是通过赋值传递的,参数通过赋值传递给函数 def语句将创建一个函数对象并将其赋值给一个变量名,def语句的一般格式如下: def <name>(arg1,arg2,arg3,--,argN): <stateme

  • Python入门及进阶笔记 Python 内置函数小结

    内置函数 常用函数 1.数学相关 •abs(x) abs()返回一个数字的绝对值.如果给出复数,返回值就是该复数的模. 复制代码 代码如下: >>>print abs(-100) 100 >>>print abs(1+2j) 2.2360679775 •divmod(x,y) divmod(x,y)函数完成除法运算,返回商和余数. 复制代码 代码如下: >>> divmod(10,3) (3, 1) >>> divmod(9,3) (

  • Python 递归函数详解及实例

    Python 递归函数 如果一个函数体直接或者间接调用自己,那么这个函数就称为递归函数.也就是说,递归函数体的执行过程中可能会返回去再次调用该函数.在python里,递归函数不需要任何特殊的语法,但是它需要付出一定的努力去理解和创建. 我们会以一个简单的例子开始:写一个函数求一个自然数中所有数字的和.在设计递归函数的时候,我们会寻找能把问题分解成简单的问题的方法.在这道题中,运算符%和//可以用来把一个数分成两部分:最低位和不包含最低位数字两部分. 18117的数字和为:1+8+1+1+7=18

  • Python中你应该知道的一些内置函数

    前言 python内置了一些非常巧妙而且强大的内置函数,对初学者来说,一般不怎么用到,我也是用了一段时间python之后才发现,哇还有这么好的函数,这个函数都是经典的而且经过严格测试的,可以一下子省了你原来很多事情,代码不仅简洁易读了很多,而且不用自己去闭门造车.既方便了自己又减少了bug. 一.sorted() 1)对于一个列表排序 sorted([100, 98, 102, 1, 40]) >>>[1, 40, 98, 100, 102] 2)通过key参数/函数 比如一个长列表里面

  • Python递归函数定义与用法示例

    本文实例讲述了Python递归函数定义与用法.分享给大家供大家参考,具体如下: 递归函数 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数. 举个例子,我们来计算阶乘 n! = 1 * 2 * 3 * ... * n,用函数 fact(n)表示,可以看出: fact(n) = n! = 1 * 2 * 3 * ... * (n-1) * n = (n-1)! * n = fact(n-1) * n 所以,fact(n)可以表示为 n * fact(n-1),只有

  • 详谈Python基础之内置函数和递归

    一.内置函数 下面简单介绍几个: 1.abs() 求绝对值 2.all() 如果 iterable 的所有元素都为真(或者如果可迭代为空),则返回 True 3.any() 如果 iterable 的任何元素为真,则返回 True.如果iterable为空,则返回 False 4.callable() 如果 object 参数出现可调,则返回 True,否则返回 False 5.divmod() 以两个(非复数)数字作为参数,并在使用整数除法时返回由商和余数组成的一对数字.对于混合操作数类型,二

  • Python 内置变量和函数的查看及说明介绍

    Python 解释器内置了一些常量和函数,叫做内置常量(Built-in Constants)和内置函数(Built-in Functions),我们怎么在 查看全部内置常量和函数的名字呢?怎么查看全部内置常量和函数的使用说明呢? 一.查看全部的内置常量和内置函数 1.在开始菜单中输入"idle",按下回车(Enter)打开Python IDLE,我用的 是 Python 3.6.5 ,版本不同,界面有差异,但是操作方法是一样的. 2.方法一: 输入 dir(__builtins__)

  • Python 内置高阶函数详细

    目录 1.Python的内置高阶函数 1.1 map() 1.2 reduce() 函数 1.3 reduce() 函数 1.4 sorted() 函数 1.Python的内置高阶函数 1.1 map() map()会根据提供的函数对指定序列做映射 语法格式: map(function, iterable, ...) 第一个参数function以参数序列中的每一个元素调用function函数, 第二个参数iterable一个或多个序列 返回包含每次 function 函数返回值的新列表. 示例代

  • 浅析python 内置字符串处理函数的使用方法

    一.lower():将大写字母全部转为小写字母.如: 复制代码 代码如下: name='G'b=name.lower() 二.title"":将字符串转化为标题,即所有单词的首字母大写,其他字母小写.使用方法同lower() 三.replace:返回某字符串的所有匹配项均被替换之后得到的字符串. 复制代码 代码如下: 'This is a test'.replace('is','are') 四.split:将字符串分割成序列 复制代码 代码如下: '1+2+3+4+5'.split('

  • Python内置函数的用法实例教程

    本文简单的分析了Python中常用的内置函数的用法,分享给大家供大家参考之用.具体分析如下: 一般来说,在Python中内置了很多有用的函数,我们可以直接调用. 而要调用一个函数,就需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数.可以直接从Python的官方网站查看文档:http://docs.python.org/2/library/functions.html#abs 也可以在交互式命令行通过help(abs)查看abs函数的帮助信息. 调用abs函数: >>> a

  • python内置函数:lambda、map、filter简单介绍

    lambda lambda可以理解为一种小函数,但是它是一个表达式,而不是一个语句,所以在def不允许出现的地方仍然可以使用lambda函数,例如list里.但是lambda内只可以执行一个表达式. def f(x): return x**2 print f(3) a = lambda x: x**2 print a(3) a = lambda x,y: x+y print a(1,2) ~ 一个lambda语句就相当于一个函数定义,调用的时候也和函数一样. map函数 有时候我们可以需要处理一

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

    今天在网上看到type的一段代码 ,然后查了一下文档,才知道type还有三个参数的用法. http://docs.python.org/2/library/functions.html#type 以前只是知道type可以检测对象类型.然后发现了一个有趣的用法. 复制代码 代码如下: def println(self): a = 1 + 1 print "%s,%s" % (self.aa, a) A = type('A',(),{'aa':'print a', 'println': p

  • Python内置函数reversed()用法分析

    本文实例讲述了Python内置函数reversed()用法.分享给大家供大家参考,具体如下: reversed()函数是返回序列seq的反向访问的迭代器.参数可以是列表,元组,字符串,不改变原对象. 1>参数是列表 >>> l=[1,2,3,4,5] >>> ll=reversed(l) >>> l [1, 2, 3, 4, 5] >>> ll <listreverseiterator object at 0x06A9E9

  • Python内置函数之filter map reduce介绍

    Python内置了一些非常有趣.有用的函数,如:filter.map.reduce,都是对一个集合进行处理,filter很容易理解用于过滤,map用于映射,reduce用于归并. 是Python列表方法的三架马车. 1. filter函数的功能相当于过滤器.调用一个布尔函数bool_func来迭代遍历每个seq中的元素:返回一个使bool_seq返回值为true的元素的序列. >>> N=range(10) >>> print filter(lambda x:x>

  • Python内置函数—vars的具体使用方法

    本文文章主要介绍了Python内置函数-vars的具体使用方法,分享给大家,具体如下: 英文文档: vars([object]) Return the __dict__ attribute for a module, class, instance, or any other object with a __dict__ attribute.Objects such as modules and instances have an updateable __dict__ attribute; h

  • 基于python内置函数与匿名函数详解

    内置函数 Built-in Functions abs() dict() help() min() setattr() all() dir() hex() next() slice() any() divmod() id() object() sorted() ascii() enumerate() input() oct() staticmethod() bin() eval() int() open() str() bool() exec() isinstance() pow() super

随机推荐