python如何通过闭包实现计算器的功能

作者:奔奔-武 时间:2023-10-04 06:08:06 

这篇文章主要介绍了python如何通过闭包实现计算器的功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

满足闭包的条件:

1、函数中嵌套一个函数

2、外层函数的返回值是内层函数的函数名

3、内层嵌套函数对外部作用域有一个非全局变量的引用

闭包的作用:

实现数据锁定

装饰器的作用:

就是为已经存在的对象添加额外的功能。
常用场景:

插入日志、性能测试、事务处理、缓存、权限校验等

代码示例:


def scope(func):
 def calc(a, b):
   try:
     _a = float(a)
     _b = float(b)
   except:
     _a = 0
     _b = 0
   return func(_a, _b)
 return calc

@scope
def add(a, b):
 return a + b

@scope
def sub(a, b):
 return a - b

@scope
def mul(a, b):
 return a * b

@scope
def div(a, b):
 try:
   return a / b
 except ZeroDivisionError as error:
   print(error)
   return 0

# 调用闭包函数
res = scope(add)("1", 3)
print(res)

res = add("1", "2")
print(res)

res = sub("1", "2")
print(res)

res = mul("1", "2")
print(res)

res = div("1", "2")
print(res)

来源:https://www.cnblogs.com/benben-wu/p/12104448.html

标签:python,闭包,计算,器
0
投稿

猜你喜欢

  • MySql 5.6.35 winx64 安装详细教程

    2024-01-24 13:36:13
  • Javascript"篱式"条件判断(翻译)

    2008-08-01 12:21:00
  • 常用的三种修改mysql最大连接数的方法

    2010-03-09 15:42:00
  • mac系统OS X10.10版本安装最新5.7.9mysql的方法

    2024-01-14 10:05:38
  • node.js中的fs.statSync方法使用说明

    2024-05-13 10:05:29
  • Python利用PyPDF2快速拆分PDF文档

    2021-11-06 09:39:23
  • PHP 动态随机生成验证码类代码

    2024-05-02 17:18:02
  • python 装饰器的实际作用有哪些

    2023-04-10 15:00:50
  • MySQL UPDATE 语句的非标准实现代码

    2024-01-16 19:08:57
  • 基于Python+Turtle实现绘制简易的大风车

    2021-02-25 18:52:11
  • Python语言描述KNN算法与Kd树

    2021-07-24 05:10:35
  • asp生成UTF-8格式的文件方法

    2008-01-26 20:59:00
  • jupyter 中文乱码设置编码格式 避免控制台输出的解决

    2023-04-27 08:01:13
  • 解决pycharm安装后代码区不能编辑的问题

    2022-07-26 22:26:24
  • 批处理写的 oracle 数据库备份还原工具

    2024-01-25 06:32:27
  • python编程测试电脑开启最大线程数实例代码

    2023-07-07 12:19:46
  • 小议sqlserver数据库主键选取策略

    2024-01-25 15:03:52
  • javascript学习随笔(编写浏览器脚本 Navigator Scripting )

    2024-04-28 09:49:39
  • Pandas如何对Categorical类型字段数据统计实战案例

    2023-03-01 20:02:26
  • 推荐5款跨平台的PHP编辑器

    2023-10-18 12:49:40
  • asp之家 网络编程 m.aspxhome.com