背景

需要频繁使用python 对mssql 进程insert into 语句,在此过程中有很多的错误产生(如字段长度不够,一些奇怪字符等),调试起来很不方便,因此写了个装饰器,进行异常捕捉,并将产生错误的插入信息打印出来,这样就能够很直观地发现错在什么地方。

方法

装饰器代码:

def sql_capture(fun):def add_cap(*args, **kwargs):try:fun(*args, **kwargs)except:print('Error execute: %s' % fun.__name__)print(kwargs)print(traceback.format_exc())sys.exit()return add_cap

装饰器的使用:

def basic_info(cur):user = 'zhangsan'job = '程序员'data = (user_edu, job_type)@sql_capturedef basic_info_to_sql(data):  #只在这个函数中用,因此定义在此函数中cur.execute("INSERT INTO [dbo].[id_card]([user], [job])values(%s,%s)", data)basic_info_to_sql(data=data)  # 调用

Python 装饰器捕捉异常相关推荐

  1. python 装饰器实践,实现定时函数和失败异常重复调用

    python 装饰器实践,实现定时函数和失败异常重复调用 执行请求或函数,出现异常情况下指定重复执行次数 可以作为一个包调用 方法 get()和post 做请求,execcunt = 指定请求失败再次 ...

  2. Python笔记_23_正则相关函数_类中的方法_装饰器_异常

    文章目录 正则相关函数 search 和 match split 切割 sub 替换 finditer 匹配字符串中相应内容,返回迭代器 compile 指定一个统一的匹配规则 正则表达式的修饰符 类 ...

  3. python装饰器,迭代,异常

    python装饰器,迭代,异常 装饰器的联系 DEL = 8 READ = 4 WRITE = 2 EXE = 1 userpermission = 9def check(x, y):print(&q ...

  4. Python 装饰器 函数

    Python装饰器学习(九步入门):http://www.cnblogs.com/rhcad/archive/2011/12/21/2295507.html 浅谈Python装饰器:https://b ...

  5. 深入浅出 Python 装饰器:16 步轻松搞定 Python 装饰器

    2019独角兽企业重金招聘Python工程师标准>>> Python的装饰器的英文名叫Decorator,当你看到这个英文名的时候,你可能会把其跟Design Pattern里的De ...

  6. python装饰器类-Python 装饰器装饰类中的方法

    title: Python 装饰器装饰类中的方法 comments: true date: 2017-04-17 20:44:31 tags: ['Python', 'Decorate'] categ ...

  7. python装饰器实例-基于Python 装饰器装饰类中的方法实例

    title: Python 装饰器装饰类中的方法 comments: true date: 2017-04-17 20:44:31 tags: ['Python', 'Decorate'] categ ...

  8. python装饰器原理-python 中的装饰器及其原理

    装饰器模式 此前的文章中我们介绍过装饰器模式: 装饰器模式中具体的 Decorator 实现类通过将对组建的请求转发给被装饰的对象,并在转发前后执行一些额外的动作来修改原有的部分行为,实现增强 Com ...

  9. python类装饰器详解-Python 装饰器详解

    开放封闭原则: 开放对扩展 封闭修改源代码 改变了人家调用方式 装饰器结构 """ 默认结构为三层!!!每层返回下一层内存地址就可以进行执行函数, 传参:语法糖中的传参可 ...

最新文章

  1. 单步调试_keil for arm 调试时无法单步运行及打断点
  2. 跨网页的新手引导_IOS中新手引导页面的实现(新手引导,Guide)
  3. 我的2013-从GIS学生到GIS职业人的飞跃
  4. 谭浩强课后题(数组篇)
  5. Spring Boot 动态数据源(Spring 注解数据源)
  6. 金算盘高手论坛资料中心_3D006期 菜鸟论坛精英PK专栏 速来围观!!
  7. 键盘出现与消失的监听方法
  8. Java中类方法的快速入门
  9. ASP.NET MVC+EF框架+EasyUI实现权限管理系列
  10. uvalive 3938 Ray, Pass me the dishes! 线段树 区间合并
  11. java android 读写西门子PLC数据,包含S7协议和Fetch/Write协议,s7支持200smart,300PLC,1200PLC,1500PLC...
  12. java实现简单QQ登录界面
  13. 基于Pandas的股票数据分析
  14. Minecraft一些红石技巧(1)
  15. Centos7 kvm环境制作qcow2 格式镜像
  16. 笔记:模电-1.2二极管
  17. 记录一些面试相关的刁难题
  18. 自适应波束形成(三)——频域宽带LCMV波束形成器
  19. NOI-1.5(18) 鸡尾酒疗法
  20. 数学物理方程 第二章 线性偏微分方程的通解

热门文章

  1. 12、从头学Android之布局之TableLayout表格布局
  2. 论文查重系统可以检测哪几种语言?
  3. android4.2.2系统投屏,一学就会!手机投屏电视完整攻略
  4. css 实现带边框三角的气泡框(带三角箭头)
  5. FCA认证考试题(2023-01-05)
  6. php.ini 米拓_MetInfo 无需登录前台直接GETSHELL
  7. 解密区块链(三):公开的分布式记账
  8. (一)自适应Hopf(霍普夫)振荡器基本原理与仿真
  9. 开关电源中电感啸叫的原因
  10. WPF 自定义放大镜控件