1.回顾def
def sum(x,y):
return x+y
res = sum(10,20) #调用函数
print(res)
2.函数的三个重要属性
-函数的类型:function
-函数的ID:16进制的整数数值
-函数的值:封装在函数中的数据和代码
# - 函数是一块内存空间,通过函数名可以看到函数的本质
print(sum) #<function sum at 0x000002C8B07ED120>
print(id(sum)) #3060977815840
print(type(sum)) #<class 'function'> 函数的类型
3.函数返回值的拓展
-函数返回值的内容
-多函数返回值问题
-return的另外含义
# - 引用传递
print("--------------------------------------------------------------引用传递")
def sum(x,y):
return x+y
sum_text = sum
res = sum_text(10,20)
print(res) #30
#3.1函数的返回值
def test_return1():
print("test_return1------") #test_return1------ 只执行打印,无返回值
res = test_return1()
print(res) #None 因为缺少return语句,所以返回值为None
#3.1.1 修改
def test_return1():
return ("test_return1------")
res = test_return1()
print(res) #test_return1------
#测试函数返回自身:列表,整数,字典等都可被返回
def test_return2():
#return range(100) 输出为:range(0, 100) 返回对象
return test_return2 #返回自身
res = test_return2()
print(res) #<function test_return2 at 0x0000026146F2D120>
#3.2返回多值,可直接使用多个变量接收
def test_returm3():
return 10,{"username":"wzw","password":123},"wzw"
res1,res2,res3 = test_returm3()
print(res1,res2,res3) #10 {'username': 'wzw', 'password': 123} wzw
#3.3 return:返回执行结果 立即结束函数,返回被调处
def test_return4():
for i in [10,20,30]:
print(i) #会输出10,20,30
return
print(test_return4()) #None