函数名的应用

1.函数名的内存地址

1
2
3
4
5
6
# def func():
#   print('呵呵')
#
# print(func)
# 结果: <function func at 0x00000000021F89D8>
# 返回的是func这个函数在内存中的存储地址

 2.函数名可以赋值给其他的变量

1
2
3
4
5
6
7
# def func1():
#   print('呵呵')
#
# func1()     # 调用函数"func1"
#
# a = func1   #将函数"func1"的内存地址赋值给变量"a"
# a()         # "a"就是指向了"func1"函数的内存地址,所以也是可以条用这个函数

 3.函数名可以当做容器的元素

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# def func1():
#   print('呵呵')
#
# def func2():
#   print('哈哈')
#
# def func3():
#   print('嘿嘿')
#
# def func4():
#   print('吼吼')
#
# lst = [func1,func2,func3,func4]
# for i in lst:
#   i()
# 结果:
# 呵呵
# 哈哈
# 嘿嘿
# 吼吼

 4.函数名可以当做函数的参数进行传递

1
2
3
4
5
6
7
8
9
10
11
# def func1():
#   print('吃了吗')
#
# def func2(fn):
#   print('我是func2')
#   fn()
#
# func2(func1)
# 结果
# 我是func2
# 吃了吗

 5.函数名也可以当做另一个函数的返回值

1
2
3
4
5
6
7
8
9
10
11
12
def func1():
#   print('我是函数一')
#   def func2():
#       print('我是函数二')
#   return func2
# fn = func1()
# fn()
# 结果:
# 我是函数一
# 我是函数二
# 调用函数一,在函数一里定义了一个函数二,return返回的是函数二的函数名
# 函数外用"fn"去接收了这个函数名,就相当于把函数二赋值给了"fn"

  

 

posted @   王剑威  阅读(194)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示