鱼C论坛

 找回密码
 立即注册
查看: 3626|回复: 1

为啥装饰器和小鱼儿讲的不一样啊,求助大佬

[复制链接]
发表于 2023-1-8 18:26:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 ww185912 于 2023-1-8 20:14 编辑
  1. def trim_function_1(content):
  2.     def square_function(function):
  3.         def compute_function():
  4.             print(f"函数开始运行,进行{content}运算")
  5.             num = function()
  6.             num = num * num
  7.             print(f"函数运行完成")
  8.             return num
  9.         return compute_function
  10.     return square_function

  11. def trim_function_2(content):
  12.     def cubic_function(function):
  13.         def compute_function():
  14.             print(f"函数开始运行,进行{content}运算")
  15.             num = function()
  16.             num = num * num * num
  17.             print(f"函数运行完成")
  18.             return num
  19.         return compute_function
  20.     return cubic_function

  21. @trim_function_2(content="立方")
  22. @trim_function_1(content="平方")
  23. def num_function():
  24.     return 3

  25. print(num_function())
复制代码


不知道为啥和小鱼儿讲的顺序不一样啊!,大佬们给指点一下迷津
运行后不应该是先平方再立方吗???

但我运行完后是这样的:
函数开始运行,进行立方运算
函数开始运行,进行平方运算
函数运行完成
函数运行完成
729
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-9 07:08:36 | 显示全部楼层
23行立方和24行平方倒一下试试
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 0 反对 1

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-25 12:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表