使用python装饰器验证配置文件示例

yipeiwu_com5年前Python基础

根据不同配置文件调用不同的验证函数检查输入。可以根据需求更改验证函数的逻辑。

复制代码 代码如下:

def VerifyData(func):

    def VerifyInt(data):
        assert(int(data) > 0)

    def VerifyString(data):
        assert(len(data) > 10)

    def inner(*args, **kvargs):

        print args
        print kvargs

        assert(len(args) > 1)
        if args[1] == "int.txt":
            VerifyInt(args[0])
        elif args[1] == "string.txt":
            VerifyString(args[0])

        func(*args, **kvargs)

    return inner

@VerifyData
def WriteData(text, filepath):
    print "WriteData"
    print text
    print filepath

WriteData("1234567890", "int.txt")

相关文章

pandas数据预处理之dataframe的groupby操作方法

pandas数据预处理之dataframe的groupby操作方法

在数据预处理过程中可能会遇到这样的问题,如下图:数据中某一个key有多组数据,如何分别对每个key进行相同的运算? dataframe里面给出了一个group by的一个操作,对于”g...

python 遍历pd.Series的index和value

遍历pd.Series的index和value的方法如下,python built-in list的enumerate方法不管用 for i, v in s.items(): p...

python中requests小技巧

python中requests小技巧

关于  Python requests ,在使用中,总结了一些小技巧把,记录下。 1:保持请求之间的Cookies,我们可以这样做。 2:请求时,会加上headers,一般我...

Python使用time模块实现指定时间触发器示例

Python使用time模块实现指定时间触发器示例

本文实例讲述了Python使用time模块实现指定时间触发器。分享给大家供大家参考,具体如下: 其实很简单,指定某个时间让脚本处理一个事件,比如说一个get请求~ 任何语言都会有关于时间...

详解python的argpare和click模块小结

详解python的argpare和click模块小结

一、argparse模块 1、模块说明 # argparse是python的标准库中用来解析命令行参数的模块,用来替代已经过时的optparse模块,argparse能够根据程序中的...