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


Posted in Python onFebruary 24, 2014

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

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")
Python 相关文章推荐
python生成器的使用方法
Nov 21 Python
Python装饰器使用实例:验证参数合法性
Jun 24 Python
python-opencv在有噪音的情况下提取图像的轮廓实例
Aug 30 Python
python中virtualenvwrapper安装与使用
May 20 Python
攻击者是如何将PHP Phar包伪装成图像以绕过文件类型检测的(推荐)
Oct 11 Python
python实现公司年会抽奖程序
Jan 22 Python
python3发送邮件需要经过代理服务器的示例代码
Jul 25 Python
Django处理Ajax发送的Get请求代码详解
Jul 29 Python
Python中PyQt5/PySide2的按钮控件使用实例
Aug 17 Python
使用python+whoosh实现全文检索
Dec 09 Python
使用Python操作MySQL的小技巧
Sep 10 Python
Python 实现集合Set的示例
Dec 21 Python
python通过urllib2爬网页上种子下载示例
Feb 24 #Python
python控制台显示时钟的示例
Feb 24 #Python
python3访问sina首页中文的处理方法
Feb 24 #Python
python原始套接字编程示例分享
Feb 21 #Python
python实现360皮肤按钮控件示例
Feb 21 #Python
python实现360的字符显示界面
Feb 21 #Python
python和pyqt实现360的CLable控件
Feb 21 #Python
You might like
神族 Protoss 历史背景
2020/03/14 星际争霸
PHP 5昨天隆重推出--PHP 5/Zend Engine 2.0新特性
2006/10/09 PHP
PHP $_FILES函数详解
2011/03/09 PHP
php实现通过cookie换肤的方法
2015/07/13 PHP
8款非常棒的响应式jQuery 幻灯片插件推荐
2012/02/02 Javascript
使用javascript实现监控视频播放并打印日志
2015/01/05 Javascript
Angular用来控制元素的展示与否的原生指令介绍
2015/01/07 Javascript
javascript日期格式化方法小结
2015/12/17 Javascript
BootStrap和jQuery相结合实现可编辑表格
2016/04/21 Javascript
jquery 删除节点 添加节点 找兄弟节点的简单实现
2016/12/07 Javascript
Angular实现可删除并计算总金额的购物车功能示例
2017/12/26 Javascript
Angular CLI在Angular项目中如何使用scss详解
2018/04/10 Javascript
vue中element 的upload组件发送请求给后端操作
2020/09/07 Javascript
[12:36]《DOTA2》国服注册与激活指南全攻略
2013/04/28 DOTA
[55:45]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第三场 8.24
2019/09/10 DOTA
python实现中文分词FMM算法实例
2015/07/10 Python
Python中对元组和列表按条件进行排序的方法示例
2015/11/10 Python
python调用fortran模块
2016/04/08 Python
Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
2017/08/31 Python
浅析Python 3 字符串中的 STR 和 Bytes 有什么区别
2018/10/14 Python
用Python实现读写锁的示例代码
2018/11/05 Python
python元组和字典的内建函数实例详解
2019/10/22 Python
python读取word 中指定位置的表格及表格数据
2019/10/23 Python
python turtle 绘制太极图的实例
2019/12/18 Python
python中time.ctime()实例用法
2021/02/03 Python
全球速卖通法国在线交易平台:AliExpress法国
2017/07/07 全球购物
伦敦著名的运动鞋综合商店:Footpatrol
2019/03/25 全球购物
超市端午节活动方案
2014/01/23 职场文书
中国梦演讲稿3分钟
2014/08/19 职场文书
企业挂职心得体会
2014/09/10 职场文书
讲文明知礼仪演讲稿
2014/09/13 职场文书
深入开展党的群众路线教育实践活动心得体会
2014/11/05 职场文书
2015年毕业生自荐信范文
2015/03/24 职场文书
干部考核工作总结
2015/08/12 职场文书
Python趣味挑战之用pygame实现简单的金币旋转效果
2021/05/31 Python
浅析Python中的套接字编程
2021/06/22 Python