Python基础:函数返回值 & return

函数返回值

return

函数体中 return 语句有指定返回值时返回的就是其值.
函数体中没有 return 语句时,函数运行结束会隐含返回一个 None 作为返回值,类型是 NoneType,与 return 、return None 等效,都是返回 None。

前文我们讲到了 “自定义函数及函数基本使用”,
链接为:https://blog.csdn.net/weixin_42250835/article/details/86761960#commentsedit

现在,我们再来讲一讲,函数的返回值 “return”

前文我们讲的函数及调用是这个样子的

def func1():
	print("函数被调用")

f = func1()		#调用函数
print(f)
print(type(f))	#因为返回的函数没有值,所以打印输出结果为<class 'NoneType'>

现我们使用 return 来查看函数的返回值

单个返回值

#单个返回值
def func2(p):
	return p
f = func2(1)
print(f)
print(type(f))

多个返回值

#多个返回值
def func3():
	z = x + y
	return z

f = func3()
print(f)
print(type(f))		#多个返回值返回的类型为元组		<class 'tuple'>

无论定义的是返回什么类型,return 只能返回单值,但值可以存在多个元素。
return [1,3,5] 是指返回一个列表,是一个列表对象,1,3,5 分别是这个列表的元素
return 1,3,5 看似返回多个值,隐式地被Python封装成了一个元祖返回

函数的返回值是一个函数

#函数的返回值是一个函数
def func4():
	if x == 2:
		def inner_func(y):
			return y * y
	if x == 3:
		def inner_func(y):
			return y * y * y 
	return inner_func			#当函数作为返回值的时候,只传名称
	#return inner_func()		#这是一个错误的函数作为函数返回值的示范

calc = func4(2)					#calc 虽然是一个变量名,但是当func4()运行完之后,它就是一个函数了
z = calc(5)
print(z)						#打印输出结果为 25

猜你喜欢

转载自blog.csdn.net/weixin_42250835/article/details/86767219