《笨方法学 Python 3》21.函数可以返回某些东西

知识点:

这节课主要是讲两点:1. return返回函数值,并把返回结果赋值给一个变量。 2.把一个函数的返回值当做另外一个函数的参数。

#返回:参数相加
def add(a,b):
	print(f"adding {a} + {b}")
	return a + b

#返回:参数相减
def subtract(a,b):
	print(f"subtracting {a} - {b}")
	return a - b

#返回:参数相乘
def multiply(a,b):
	print(f"multiplying {a} * {b}")
	return a * b

#返回:参数相除
def divide(a,b):
	print(f"dividing {a} / {b}")
	return a / b

print("#让我们用函数做一些数学运算吧!")

#将函数返回的结果赋值给一个变量!
age = add(20,6)
height = subtract(200,25)
weight = multiply(68,2)
iq = divide(200,2)

#打印
print(f"Age: {age}, Height: {height}, Weight: {weight}, IQ: {iq}")


# A puzzle for the extra credit, type it in anyway.
#一个关于加分项的谜题,无论如何也要输入它。
print("这是一个谜题。")

#这里有点麻烦,Python的的执行顺序是“由内向外”的,
#反正就是把一个函数返回的结果当做参数,传给另外一个函数,下面这道题镶嵌的有点深!
what = add(age, subtract(height, multiply(weight, divide(iq, 2))))

print("这就变成了:", what, "你能亲自动手做吗?")

注意看注释,我感觉写的挺清楚的!

结果:


小干货:

以下内容来自@哈哈餐馆,大佬勿怪:

看一下下面的代码,我们明明在Pythonzh中调用了两次函数 1. a1(10,72);  2. print(a1(10,72));为什么只有1个结果???

那是因为return返回的结果是保存在内存中的,如果没人使用这个返回的结果,则这个结果将被 python 的垃圾回收机制清除掉来腾出可用内存;所以通常情况下,我们会为结果赋值,用一个变量表示结果并等待被使用,或者如本例直接使一个函数被另一个当作参数来用。

def a1(a,b):
	return a + b

a1(10,72)
print(a1(10,72))

 

END!!! 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值