Python自省 这个也是python彪悍的特性. 自省就是面向对象的语言所写的程序在运行时,所能知道对象的类型.简单一句就是运行时能够获得对象的类型.比如type(),dir(),getattr(),hasattr(),isinstance(). a = [1,2,3] b = {'a':1,'b ...
分类:
编程语言 时间:
2017-12-19 19:40:17
阅读次数:
138
一、type()函数 判断基本数据类型可以直接写int,str等: 判断一个对象是否是函数: 二、isinstance()函数 对于class的继承关系来说,使用type()就很不方便。如果要判断class的类型,可以使用isinstance()函数。 用isinstance()判断基本类型: 并且 ...
分类:
编程语言 时间:
2017-12-17 17:02:56
阅读次数:
202
这里需要修改python在异常发生后的处理流程 sys.excepthook 是python系统的异常处理器,重写一个自定义处理器,并在打印异常信息后,启动pdb。 import sys def info(type, value, tb): # 异常类型 # 异常值 # 调用栈 if hasattr ...
分类:
编程语言 时间:
2017-12-17 11:09:57
阅读次数:
180
class Foo(): def __init__(self,name): self.name=name def text(self): return 123 f=Foo(1) ''' hasattr(obj,name) 判断一个对象里面是否有name属性,或者name方法,返回bool值,有nam... ...
分类:
编程语言 时间:
2017-12-14 21:14:02
阅读次数:
134
hasattr(object, name) 函数: 判断一个对象里面是否有name属性或者name方法,返回bool值,有name属性返回True,否则返回False。 注意: name要用括号括起来。 getattr(object, name[,default]) 函数: 获取对象object的属 ...
分类:
编程语言 时间:
2017-12-10 19:32:44
阅读次数:
334
python的对象反射功能,经常在编程时使用.相比较其它的编程语言使用非常方便.反射就是用字符串来操作对象或者类,模块中的成员. 一.对象的反射 反射功能的实现,由这4个内置函数来实现(hasattr, getattr, setattr, delattr) 1.1.hasattr判断是否有某个成员 ...
分类:
编程语言 时间:
2017-11-30 19:10:39
阅读次数:
405
hasattr(x, y) getattr(x, y) setattr(x, y , v) delattr(x, y)四种反射方法,就是把字符串反射为内存地址。 ...
分类:
其他好文 时间:
2017-11-25 22:38:04
阅读次数:
140
1. 若将一个类定义为字典中的key,该类应实现什么方法,如何实现? 2. python中的浅复制与深复制? 3. python中的sys模块有什么作用?如何获得变量(函数?)所占内存空间? 4. python中的ducking type 5. getattr、setattr、hasattr的功能 ...
分类:
编程语言 时间:
2017-11-21 01:18:49
阅读次数:
399
hasattr(object, name)判断一个对象里面是否有name属性或者name方法,返回BOOL值,有name特性返回True, 否则返回False。需要注意的是name要用括号括起来 getattr(object, name[,default])获取对象object的属性或者方法,如果存 ...
分类:
编程语言 时间:
2017-11-19 13:37:55
阅读次数:
265
issubclass(class, classinfo):检查class是否属于classinfo isinstance(object, classinfo):检查实例对象object是否属于类classinfo hasattr(object, name):检查实例对象object是否有名为str( ...
分类:
编程语言 时间:
2017-11-06 20:13:12
阅读次数:
261