Python中的“ @”(@)符号有什么作用?

 我来答
高考启航学长
高能答主

2022-01-16 · 把复杂的事情简单说给你听
知道小有建树答主
回答量:1072
采纳率:95%
帮助的人:24.3万
展开全部
【@】符号在python中是装饰器的意思。
装饰器对一个可调用对象(函数、方法、类等等)进行装饰,它返回的也是一个可调用对象。
一般情况下,装饰器是对被装饰对象的修饰与增强。用现实事物类比的话,可以类比为中间商:中间商不生产产品,它将工厂生产的产品进行包装、运输后再销售给顾客。装饰器不实现核心功能,它提供对目标函数调用的封装与强。
它装饰的方法返回值是一个对象(BillList、Bill、List[BillDetail]等),而装饰器【enabled_cache】的作用如它的名称一样:使用缓存。可以看到,这个装饰器函数中定义了一个函数【wrapper】然后将这个wrapper作为返回值。这样,原本调用ProductionBos.bill_with_last_week的代码就不需要做任何改变就能享受到ProductionBos.bill_with_last_week原有的功能(得到一个BillList对象)和enabled_cache提供的附加功能(如果该对象有缓存,就不再从数据库查询)。
lingli005

2021-10-31 · 影视作品解说分享,关注哦
lingli005
采纳数:614 获赞数:1581

向TA提问 私信TA
展开全部

用不同的方式来说其他人:是的,它是一个装饰器。

在Python中,就像:

  • 创建一个函数(在@调用之后)

  • 调用另一个函数以对您创建的函数进行操作。 这将返回一个新函数。 您调用的函数是@的参数。

  • 用返回的新函数替换定义的函数。

  • 这可以用于各种有用的东西,因为功能是对象,而只是指令而已,因此成为可能。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
河南新华电脑学院
2021-10-31 · 百度认证:河南新华电脑学院有限公司官方账号
河南新华电脑学院
河南新华电脑学院隶属于IT教育知名品牌——新华互联网科技,是具有一定影响力的直营电脑教育品牌。
向TA提问
展开全部
  • 创建一个函数(在@调用之后)

  • 调用另一个函数以对您创建的函数进行操作。 这将返回一个新函数。 您调用的函数是@的参数。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户

2021-10-31
展开全部
行开头的@符号用于类,函数和方法装饰器.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
T小蚂虾
2021-11-01 · 超过32用户采纳过TA的回答
知道答主
回答量:760
采纳率:15%
帮助的人:53万
展开全部
装饰函数用的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式