Python编程思维 Task-4

本文介绍了Python编程中的函数缓存技术,通过一个简单的类实现展示了如何利用缓存提高代码效率。同时,深入讲解了函数的定义(def)、参数和return的使用,强调了return在函数中保存和返回结果的重要性。此外,还提及了函数相关的高级话题,如闭包、递归等,强调了这些概念在实际编程中的相互联系。
摘要由CSDN通过智能技术生成

一、助教123


最近周围疫情又开始扩散了,工作也比较忙。不太开心呐,比较烦。

函数缓存

分享之前在对代码优化中用到的一个东西,名字叫做函数缓存。这个东西其实就是一个闭包,当时主要是遇到很多重复计算浪费时间。原理很简单其实就是记录每一次输入和输出,写在一个字典中。当计算的时候如果计算过就直接字典索引。若是没有计算过则会计算并添加到字典中。

class Chace:
	def __init__(self, func):
		self.func = func
		self.dict_ = {}
		
 	def __call__(self, *args):
    	if not args in self.memo:
        	self.dict_[args] = self.func(*args)
       	return self.dict_[args]

二、学习456

(一)什么是函数

1. def

关键字:def

  1. 函数通过关键词def来创建函数
  2. def紧随其后的是空格,空格过后便是函数的名字func_name以及一个括号()和冒号:
def func_name():
	pass

2. 参数

函数是定义的用来解决某一类问题或方法,就像数学中 y = f(x)。我们希望同个这个函数我们可以输入我们想要解决的问题的内容,给出我们想要的结果。

def sum(a, b):
	print(a+b)

此处我们定义了一个求和函数,我需要传入两个数字进入函数,函数会打印出和。a和b被称为形参,我们在使用时传入的具体数字被称为实参。

3. return

关键字为:return
这么说其实不太准确,因为传出数据的手段不止return,但现在我们可以只管使用return就可以了。当函数运行到return时就会自动退出函数并返回我们需要返回的内容,

def sum(a, b):
	s = a + b
	return s

这里我们依旧是定义了一个求和函数,但是不同的是刚刚我们只是打印了两个数之和。并没有将他们的和给保留下来,实际中我们是需要他们的和来继续后续的计算,因此return关键词就可以将他们的和给保存下来。
当函数并没写return时,此时若是将函数结果赋值给其他变量,此时函数会默认返回None值。

其实还有很多

函数可以聊的东西太多了,例如闭包,递归,全局变量局部变量等等。很多东西都不是单独存在的,看似没有关联的东西其实在细节上都有巧妙地结合。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>