# 函数对象指的是函数可以被当成变量去使用
def foo(): # 函数的内存地址
print('from foo')
# 可以被赋值
f = foo
print(f is foo)
f()
# 可以当作参数传给一个函数
def bar(func):
print(func)
func()
bar(foo)
# 可以当成一个函数的返回值
def bar(func):
return func
res = bar(foo)
print(res)
bar(foo)
# 可以当成容器类型的元素
l = [foo]
print(l)
l[0]()
# 示例
def login():
print('login..')
def withdraw():
print('withdraw..')
def transfer():
print('transfer..')
func_dict = {
'1': [login, '登录'],
'2': [withdraw, '取钱'],
'3': [transfer, '转账']
}
while True:
print('0 退出')
for i in func_dict:
print(f'{i} {func_dict[i][1]}')
cmd = input('cmd : ')
if cmd == '0':
break
elif cmd == cmd:
func_dict[cmd][0]()
24函数对象
最新推荐文章于 2022-04-06 18:14:58 发布