15 函数小高级 函数当作列表 字典 内存地址 使用场景

没有return时,函数返回为None

一般让函数当作字典的vaule

函数名当作变量来使用

a = 123
name = '老男孩好'
nums = [11,22,33,44]
def func():
    pass # 100行代码
func()

#函数赋值

def func():
    print(123)
    
v1 = func 

func()
v1()

#函数当作列表元素使用
def func():
    print(123)
    return 666  # 没有return时,函数返回为None
    
func_list = [func, func, func]   #表示列表中有三个func函数地址 
#函数可以放在集合里面,函数一般放在列表里面
# func_list[0]()
# func_list[1]()
# func_list[2]()
for item in func_list:
    v = item()  #函数名后面 + 括号表示,执行函数     item()
    print(v)  # 没有return时,函数返回为None
    
    
#函数当作字典使用    
def func():
    print(123)

def bar():
    print(666)

info = {'k1': func, 'k2': bar}  #一般让函数当作字典的vaule.

info['k1']()  #通过k1找到函数后,增加  ()表示函数会执行,
info['k2']()

容易混淆场景-重点

def func():
    return 123

func_list1 = [func,func,func]  #函数内存地址
func_list2 = [func(),func(),func()]   #执行函数,没有返回值,默认返回None

print(func_list1)  #函数内存地址
print(func_list2)

info = {
    'k1':func,  #函数内存地址
    'k2':func(),  #函数返回值 123
}

print(info)
posted @ 2024-09-25 22:43  jhchena  阅读(4)  评论(0编辑  收藏  举报