反射: 反射就是可以从对象中搜索出所需的属性 先检测是否存在某属性用hasattr,如果要获取用getattr,如果对属性要进行添加或修改用setattr,如果需要删除用delattr 【如果没有某个属性,getattr会报错,setattr不会报错,delattr会报错】 class A: hah... ...
分类:
其他好文 时间:
2018-02-06 21:42:40
阅读次数:
180
反射 # 通过字符串的形式对对象中的成员进行操作(获取/查找/添加/删除)。 操作的内置函数: 1.获取 getattr(object, name) # 去对象object中获取name的内容 class Foo: def __init__(self, name, age): self.name = ...
分类:
编程语言 时间:
2018-02-05 14:17:38
阅读次数:
186
一、反射 1、什么是反射? 用字符串类型的名字去操作变量 2、反射对象中的属性和方法 getattr\hasattr\setattr\delettr 3、 getattr:通过字符串类型的名字取到变量的值 hasattr:判断字符串类型的名字对应的值是否存在 setattr :(建立)设置字符串类型 ...
分类:
其他好文 时间:
2018-01-28 23:16:21
阅读次数:
202
一、拦截器 1、拦截所有URL 2、拦截匹配的URL 3、HandlerMapping上的拦截器 注意:如果使用了<mvc:annotation-driven />, 它会自动注册DefaultAnnotationHandlerMapping 与AnnotationMethodHandlerAdap ...
分类:
编程语言 时间:
2018-01-24 22:25:28
阅读次数:
282
###反射## getattr,hasattr,setattr,delattr,和类里面的字段有关,具体看例子 #1 class Person: def __init__(self,name,age): self.name = name self.age = age def show_lover(s ...
分类:
其他好文 时间:
2018-01-23 22:02:51
阅读次数:
180
1、tuple操作我们在定义变量之前,最好先申明该变量的类型,如l=list()#l为列表print(l)t=tuple()#t为元组print(t)当我们定义一个相同元素时,不一样的写法将得到不一样的数据类型a1=(1)a2=(1,)print(type(a1))#<class‘int‘>print(type(a2))#<class‘tuple‘>在tuple类型中,单个
分类:
编程语言 时间:
2018-01-23 11:03:15
阅读次数:
177
1,反射 反射:使用字符串类型的名字去操作变量 反射就没有安全问题,去操作内存中已经存在的变量 #反射对象中的属性和方法 class A: price=20 print(getattr(A,'price')) #反射对象的属性 class A: def func(self): print('in f ...
分类:
编程语言 时间:
2018-01-22 17:40:47
阅读次数:
146
1、反射 反射的存在解决了eval的安全问题,eval是接收外界输入进行执行,而反射是对已有的东西进行转换或者操作相对安全 反射对象中的反射方法 hasattr getattr setattr delattr getattr ...
分类:
其他好文 时间:
2018-01-22 17:39:36
阅读次数:
132
有时我们需要将一个文件的信息(类、函数及变量)保存到文件,我们不能直接保存函数对象,而是将其转化为fn.__name__,问题来了,当我们想通过读取文件的形式重新配置这些类、函数时,该如何把这些字符串转换为对应的函数对象呢? 查看getattr的doc, getattr(object, name[, ...
分类:
其他好文 时间:
2018-01-22 17:32:10
阅读次数:
180