首页 > 编程语言 >python装饰器

python装饰器

时间:2023-07-26 09:13:23浏览次数:37  
标签:return python double func multiple 装饰 def

目录

函数可以作为参数

  • 函数本身在python里面是一个对象, 也可以作为参数被传入另一个参数里.
def double(x):
	return x*2

def triple(x):
	return x*3

def calc_number(func,x):
	print(func(x))
	
calc_number(double,3)
calc_number(triple,3)

函数可以作为返回值

def get_multiple_func(n):
	def multiple(x):
		return n*x
	return multiple
	
double = get_multiple_func(2)
triple = get_multiple_func(3)

print(double(2), triple(3))

装饰器

方法装饰器
  • 输入是函数, 输出大部分也是函数.
  • 一个极简的装饰器例子:
def dec(f):
	pass

@dec
def double(x):
	return x*2
	
# 完全等价
double = dec(double)
类装饰器

标签:return,python,double,func,multiple,装饰,def
From: https://www.cnblogs.com/sdulyq/p/17581501.html

相关文章

  • 盘点一个通过python大批量插入数据到数据库的方法
    大家好,我是皮皮。一、前言前几天在Python白银群【鶏啊鶏】问了一个Python数据存入数据库的问题,一起来看看吧。各位大佬我想请教下通过python大批量插入数据到数据库的方法目前我在用的操作是以下这个模式:sql=''foriinlist:sql="insertXXX表(地址,单号,缸号,状态,备......
  • python 函数 定义参数类型
    Python函数参数类型的定义在Python中,函数是一种非常重要的编程概念,它可以将一段代码逻辑封装成一个可重复使用的块。函数的参数类型的定义对于函数的正确使用和调用至关重要。本文将介绍Python中函数参数类型的定义方法,并给出一些代码示例。为什么要定义函数参数类型Python......
  • python 固定长度数组
    python固定长度数组在Python中,数组是一种常见的数据结构,用于存储相同类型的元素。通常,我们可以使用列表(List)来表示数组。然而,Python中的列表是可变长度的,这意味着我们可以随时向列表中添加或删除元素。但在某些情况下,我们需要固定长度的数组,即不能增加或删除元素。本文将介绍如何......
  • python 根据文字生成图片
    使用Python生成图片导言在这篇文章中,我将向您展示如何使用Python根据文字生成图片。这个过程可以通过以下几个步骤实现:创建一个空白图片;添加文字到图片中;设置图片的样式,如字体、颜色和大小;保存生成的图片。现在,让我们一步一步地来实现这个过程。步骤下面的表格展示了整......
  • python 根据句柄获取窗体截图
    Python根据句柄获取窗体截图概述在开发过程中,我们经常会遇到需要获取窗体截图的需求。本文将教你如何使用Python根据句柄获取窗体截图。步骤下面是整个流程的步骤:步骤描述步骤1导入相关模块步骤2获取窗体句柄步骤3获取窗体位置和大小步骤4根据窗体位置......
  • Python【22】 __iter__, __next__, iterable, iterator, 可迭代对象, 迭代
    参考:https://www.jianshu.com/p/1b0686bc166d......
  • Python中的浅复制与深复制
     1.元组:元组是不可变的有序列表。1a=[30,40]2tuple_a=(1,2,a)3a[0]=34tuple_a5#>>>(1,2,[3,40])#元组是不可变的,但是元组中的元素如果是引用(某个对象的地址),引用的对象是可能会改变的。 2.copy模块中的copy方法可能可以浅复制......
  • AI训练营—Python的一些基础知识
    目录列表字典复制对象列表切片:左开右闭倒取值字典集合:无序的,元素是唯一的dk_set=set()#也可以是dk_set={},创建一个空的集合#集合的并union(),交intersection(),差difference()#集合不会出现重复元素foriin"Dkfor3,Dkfor3":dk_set.add(i)#添加元素i的值进集合......
  • python 转义括号
    Python转义括号的实现过程概述在Python编程中,转义括号是一种特殊的语法,用于表示字符串中的括号字符。当我们需要在一个字符串中包含括号时,为了避免与代码中的括号产生歧义,我们需要使用转义括号来表示括号字符本身。本文将详细介绍如何在Python中实现转义括号的功能。实现步骤......
  • python 抓包ip
    Python抓包IP的实现步骤在Python中,我们可以使用一些第三方库来实现抓包IP的功能,其中比较常用的是scapy库。本文将向你介绍如何使用scapy来实现Python抓包IP的功能。实现步骤下面是实现Python抓包IP的流程,我们可以使用一个表格来展示每个步骤及其对应的代码:步骤描述1......