码迷,mamicode.com
首页 > 编程语言 > 详细

python面试题

时间:2017-07-09 23:04:46      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:nbsp   main   pytho   bsp   glob   频率   redis   pre   span   

1、写一个装饰器,限制一个函数的访问频率,比如说10秒。

# -*- coding:utf-8 -*-

import redis

redis_cli = None


def init_redis():
    global redis_cli
    if not redis_cli:
        redis_cli = redis.Redis(host=127.0.0.1, port=6379, db=0)


def test(func):
    def warp(*args, **kwargs):
        func_name = func.__name__
        global redis_cli
        if redis_cli.get(func_name):
            return 请求太快了
        else:
            redis_cli.set(func_name, func_name, ex=10)
            return func(*args, **kwargs)
    return warp


@test
def get_plus(a, b):
    return a+b

if __name__ == __main__:
    init_redis()
    aa = get_plus(1, 2)

 

 

python面试题

标签:nbsp   main   pytho   bsp   glob   频率   redis   pre   span   

原文地址:http://www.cnblogs.com/xxj1988/p/7143444.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!