双层装饰器实现用户登录和权限认证 #!/usr/bin/env python# -*- coding: utf-8 -*-# Author: WangHuafengUSER_INFO = {}def check_login(func): def inner(*args, **kwargs): #.g... ...
分类:
其他好文 时间:
2016-07-03 23:01:10
阅读次数:
199
某一组行为放在并行节点下,并且包含Wait节点动作。当等待时间不达到时它会返回Runing 造成整个行为树阻塞 应该考虑写一个CD时间装饰器来解决此类问题,当CD时间未到返回Failure ...
分类:
其他好文 时间:
2016-07-03 13:13:56
阅读次数:
256
一. python反射的方式来调用方法属性 二. python类的一些注意点 1. 父类的方法里面用到子类的属性方法;其实是子类才会调用实例化调用父类的这个方法,所以不会出错 2. 特殊方法 __call__, 3. 特殊方法__iter__ 4. property, XXX.setter装饰器 ...
分类:
编程语言 时间:
2016-07-03 11:54:33
阅读次数:
163
li = [11,22,33,44]def f1(arg): arg.append(55)#函数默认返回值None,函数参数传递的是引用li = f1(li)print(li) 内置函数补充: 判断是否被调用 def f1(): pass print(callable(f1)) ASCII码与数字转... ...
分类:
其他好文 时间:
2016-07-02 10:20:08
阅读次数:
128
文章先由stackoverflow上面的一个问题引起吧,如果使用如下的代码: @makebold @makeitalic def say(): return "Hello" 打印出如下的输出: <b><i>Hello<i></b> 你会怎么做?最后给出的答案是: def makebold(fn): ...
分类:
编程语言 时间:
2016-07-02 00:31:13
阅读次数:
339
1.概念: 装饰器模式又叫做装饰者模式,是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。传统的编程模式都是子类继承父类实现方法的重载,使用装饰器模式,只需添加一个新的装饰器对象,更加灵活,避免类数目和层次过多。 2.角色: Component(被装饰对象基类):定义一个对象接口,以 ...
分类:
Web程序 时间:
2016-06-29 14:42:39
阅读次数:
339
何时使用:保持接口,增强性能。为了扩展一个类经常使用继承方式实现,由于继承为类引入静态特征,并且随着扩展功能的增多,子类会很膨胀,在不想增加很多子类的情况下扩展类,动态地给一个对象添加一些额外的职责,可以使用装饰器模式。特点:不改变原类文件、不使用继承、动态扩展。 如何解决:将具体功能职责划分,同时 ...
分类:
其他好文 时间:
2016-06-27 20:02:06
阅读次数:
167
类的属性 1.创建类的属性 2.获取类的属性 out : 11 3、设置类的属性 使用装饰器 @all_pager.setter 然后使用 p.all_pager = 111 修改属性的值 out : 111 4、删除属性 使用@all_pager.deleter 和 del p.all_pager ...
分类:
编程语言 时间:
2016-06-26 14:00:34
阅读次数:
226
set特性:无序,不重复,可嵌套 创建setset_example = set("123", "213", "234", "432")s1 = [11,22,33,44,11,22,33]s2 = set(s1)print(s2) list()相当于执行构造方法__int__,内部会执行一个for循... ...
分类:
其他好文 时间:
2016-06-25 19:02:24
阅读次数:
82
一.简介 在学习介绍装饰器之前 ,我们需要了解函数 是对象,函数 的特性是: 函数可以赋值给一个变量 函数可以定义在另一个函数内部 即,这也意味着一个函数可以返回另一个函数 装饰器就是封装器,可以让你在被装饰函数之前或之后执行代码,而不必修改函数本身 所以: 装饰器是一个修改函数、或方法、或类的函数 ...
分类:
编程语言 时间:
2016-06-25 17:51:03
阅读次数:
160