python函数名应用
函数名的应用
函数名 的应用分类:
函数就是一个特殊的变量(可以看成一个变量来用)
*函数名对应函数的内存地址
*函数名可以做为容器类数据的元素
*函数名可以作为函数的参数
*函数名可以作为函数的返回值
*函数名可以随便赋值。
向这样的函数名有一个叫法:第一类函数
1.打印函数名,显示函数内存地址
举例:
# def func1():
# print(666)
# print(func1)
结果:
# <function func1 at 0x000000000258F9D8>
2 函数名可以作为容器类数据的元素
举例:
def func1():
print(111)
def func2():
print(222)
def func3():
print(333)
l1 = [func1, func2, func3]
for i in l1:
i() ####函数名加括号即执行函数
3 函数名可以作为函数的参数
举例:
def func1():
print(111)
def func2(x):
print(x)
x()
print(222)
func2(func1)
4 函数名可以作为函数的返回值
举例:
def func1():
return 111
def func2(x): # x = func1
print(222)
return x
ret = func2(func1) # func1
print(ret())
print(ret)
结果:
222
111
<function func1 at 0x0215D810>
说明:
#向这样的函数名 有一个叫法 :第一类对象
Python中包含函数在内的一切皆为对象,函数作为第一类对象,支持赋值给变量,作为参数传递给其它函数,作为其它函数的返回值,支持函数的嵌套,实现了__call__ 方法的类实例对象也可以当做函数被调用。
python函数名应用的更多相关文章
- python 函数名 、闭包 装饰器 day13
1,函数名的使用. 函数名是函数的名字,本质就是变量,特殊的变量.函数名()加括号就是执行此函数. 1,单独打印函数名就是此函数的内存地址. def func1(): print(555) print ...
- day12 python函数名的应用 闭包 迭代器
day12 python 一.函数名的应用(是第一类对象) 函数名的命名规范和变量是一样的 函数名其实就是变量名 def func(): print('i am funct ...
- Python函数名的应用和新特性格式化输出
1.函数名指向的是函数的内存地址. def func(): print(123) print(func,type(func)) # <function func at 0x000000000 ...
- 015.Python函数名的使用以及函数变量的操作
一 函数名的使用 python中的函数可以像变量一样,动态创建,销毁,当参数传递,作为值返回,叫第一类对象.其他语言功能有限 1.1 函数名是个特殊的变量,可以当做变量赋值 def func(): p ...
- python 函数名的应用(第一类对象),闭包,迭代器
1.函数名的应用(第一类对象) 函数名的命名规范和变量是一样的 函数名其实就是变量名 可以作为列表中的元素进行储存. def func1(): pass def func2(): pass lst = ...
- python 函数名,闭包
1.函数名字的应用 函数名是什么? 函数名是函数的名字,本质:变量,特殊变量 函数名+() ———>执行此函数: 2.函数名的赋值: def func2(): print(44) f = fun ...
- Python函数名做参数,闭包,装饰器
简单讲解闭包的写法和应用,在这之前,先声明,你定义的任意一个函数都可以作为其他函数的参数.就像下面这段代码的参数func,接收的参数就是一个函数名,在函数体内部使用了func()调用执行函数. 请看下 ...
- python函数名的应用、闭包和迭代器
一.函数名的应用(第一类对象) 函数名是一个变量,但它是一个特殊的变量,与括号配合可以执行函数变量. 1.函数名的内存地址 def func(): print("哈哈") prin ...
- Python函数名为参数
1.定义两个函数,求和函数和最大函数 def add(x, y): return x + y def maxnum(x, y): return x if x > y else y lst= [2 ...
随机推荐
- easyui汉化啊!
<script type="text/javascript" src="__PUBLIC__/jquery-easyui-1.4.4/locale/easyui-l ...
- hdu 1087 Super Jumping! Jumping! Jumping!(最大上升子序列和)
Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 ...
- Picasso通过URL获取--用户头像的圆形显示
1.设置布局属性: <ImageView android:scaleType="fitXY"/> 2.BitmapUtils类-- 得到指定圆形的Bitmap对象 pu ...
- ES6入门——数值的扩展
1.二进制和八进制表示法 ES6提供了二进制和八进制数值的新的写法,分别用前缀0b或0B和0o或0O表示. 2.Number.isFinite(),Number.isNaN() ES6在Number对 ...
- ES6入门——变量的解构赋值
1.数组的解构赋值 以前为变量复制,只能直接指定值.现在ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 本质上,这种写法属于模式匹配,只要等 ...
- Java基础之多线程详细分析
在了解多线程之前,先来了解一下进程与线程之间的关系. 进程和线程: 进程是指在系统中正在执行的一个程序,每个进程之间是独立的. 线程是进程的一个基本执行单元.一个进程要想执行任务,必须得有线程(每1个 ...
- 【转】修复关于apache-xampp的问题:Port 443 in use by “vmware-hostd.exe”!
在电脑里装了VMware后,再要装xampp,十有八九就会出现这个问题: 11:23:37 [Apache] Problem detected! 11:23:37 [Apache] ...
- June 18th 2017 Week 25th Sunday
Life was like a box of chocolates, you never know what you're gonna get. 人生就像一盒巧克力,结果往往出人意料. Compare ...
- ZT 七大寡头
网易评论人才辈出啊!!!看下面 http://comment.news.163.com/news_guoji2_bbs/9GRIIJA90001121M.html 关注 关注他的微博yftyfm ...
- APUE1.11:系统调用 库函数
区别是: system call:提供一种最小接口,而库函数通常提供比较复杂的功能.