欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

Python函数名的第一类对象及使用

发布时间:2025/3/20 python 34 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Python函数名的第一类对象及使用 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

函数名的第一类对象只是一种称呼,是相对于第二类对象而言的。我们目前用到的函数基本都是第一类对象。

函数名的第一类对象主要有四个方面的应用:

  • 函数名可以当作值赋值给一个变量
  • 函数名可以当做另一个函数的参数来使用
  • 函数名可以当做另一个函数的返回值
  • 函数名可以当作元素放在容器中
  • 示例一:

    def func():print(1)a = func print(func) # 函数的内存地址 print(a) a()

    输出的结果为:

    <function func at 0x00000197E2D41EA0> <function func at 0x00000197E2D41EA0> 1

    func和a同样都是指向函数的内存地址,当我们调用a时,得到了同调用func相同的结果。

    示例二:

    ''' Python学习交流,免费公开课,免费资料, 免费答疑,系统学习加QQ群:579817333 ''' def func():print(1) def foo(a):print(a) foo(func)

    输出的结果为:

    <function func at 0x0000021FD82C1EA0>

    示例三:

    def func():return 1 def foo(a):return a cc = foo(func) print(cc)

    输出的结果是:

    <function func at 0x000002261A231EA0>

    示例四:

    有这样一个需求:用户选择需要相应的序号进行选择接下来的操作,比如选择 1 会调用注册的函数,选择 2 会调用登陆的函数……从前我们会通过流程控制语句的方式实现:

    ''' Python学习交流,免费公开课,免费资料, 免费答疑,系统学习加QQ群:579817333 ''' def login():print("登录")def register():print("注册")def shopping():print("逛")def add_shopping_car():print("加")def buy_goods():print("买")msg =""" 1.注册 2.登录 3.逛 4.加 5.买 请输入您要选择的序号: """ while True:choose = input(msg)if choose.isdecimal():if choose == "1":register()elif choose == "2":login()elif choose == "3":shopping()elif choose == "4":add_shopping_car()elif choose == "5":buy_goods()else:print("请输入正确的序号")

    通过将函数装到字典里,我们可以大量减少重复的代码:

    def login():print("登录")def register():print("注册")def shopping():print("逛")def add_shopping_car():print("加")def buy_goods():print("买")msg =""" 1.注册 2.登录 3.逛 4.加 5.买 请输入您要选择的序号: """ func_dic = {"1":register,"2":login,"3":shopping,"4":add_shopping_car,"5":buy_goods} while True:choose = input(msg) # "5"if choose in func_dic:func_dic[choose]()else:print("请输入正确的序号")

    这种使用字典调用函数的方式是一种很重要的编程思想,以后将经常用到。

    总结

    以上是生活随笔为你收集整理的Python函数名的第一类对象及使用的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。