复习 1. 字符串的比较: 2. 函数的参数:形参与实参 3. 实参的分类:位置实参与关键字实参 4. 形参分类: 1.无值位置形参 2.有值位置形参 3.可变长位置形参 4.有无值关键字形参 5.可变长关键字形参 5. 打散机制 今日内容 1. 函数默认值的细节.* 2. 数据类型的补充:语法简单,经常去使用就OK *** ----- 三元表达式  |  列表推导式  |  字典推导式 3. 函数对象:函数名的各种应用场景  ***** 4. 名称空间与作用域:解释变量名重复与从图冲突问题 …
今日内容: 1. 函数对象 函数是第一类对象: 指的是函数名指向的值可以被当中数据去使用 1.可以被引用 2.可以当做参数传给另一个函数 3.可以当做一个函数的返回值 4.可以当做容器类型的元素 2. 函数嵌套 函数嵌套分为两大类: 1.函数的嵌套调用: 在调用一个函数过程中,其内部代码又调用了其他函数 2.函数的嵌套定义: 一个函数内部又定义了另一个函数 3.名称空间与作用域(******) 1.什么是名称空间namespaces: 名称空间就是用来存放名字与值内存地址绑定关系的地方(内存空间…
今日主要内容 1.  函数默认值细节(*) 2.  数据类型补充:三元表达式.列表推导式.字典推导式 (***) 3.  函数对象:函数名的各种应用场景 (*****) 4.  名称空间与作用域:解释变量重复与冲突问题 (*****) 5.  函数的潜逃定义:在函数内部定义函数 (*****) 1.  函数默认值细节 如果函数的默认参数的默认值为变量,在所属函数定义阶段一执行就被定义为当时变量存在的值 a = 10def fn(num = a): # num = 10 a = 20 print(…
复习 # 字符串的比较 # -- 按照从左往右比较每一个字符,通过字符对应的ascii进行比较 # 函数的参数 # 1)实参与形参: # -- 形参:在函数定义时()中出现的参数 # -- 实参:在函数调用时()中出现的参数 # 2)实参的分类 # -- 位置实参:给位置形参,必须按位置 # -- 关键字实参:给位置与关键字形参,不需要按顺序 # 3)形参的分类 # -- 无值位置 # -- 有值位置 # -- 可变长位置 # -- 有无值关键字 # -- 可变长关键字 def fn(a, b=…
可变长参数 一.形参 位置形参 默认形参 二.实参 位置实参 关键字实参 三.可变长参数之* def func(name,pwd,*args): print('name:',name,'pwd:',pwd) print(args) return 1 ​ res = func('nick',12345,18,180,18000) print(res) ​ #name: nick pwd: 12345 #(18, 180, 18000) # 四.可变长参数之** def func(name,pwd,…
""" 今日内容: 1.函数参数传值细节 2.三元表达式 3.列表及字典推导式 4.函数对象 5.名称空间与作用域 6.函数的嵌套定义初识 """ """ 一.函数参数的传值细节 举例: num = 10 def fn(n=num): print(n) num = 20 fn() 在上例中函数的参数列表是一个带有默认值的位置形参,由于初识传值为 n = num = 10 在调用之前num又重新赋值了,此时在函数内打印…
函数名是可以被引用,传递的是函数的内存地址.函数名赋值给变量后,只需要在变量后加上括号即可调用函数. 名称空间 内置名称空间:在python解释器中提前定义完的名字 全局名称空间:if.while.for循环中内部定义的变量,均是全局变量:存放于文件级别的变量,也是全局名称. 局部名称空间:函数内定义的所有名称,均存放在当前函数的名称空间,属于局部名称空间. 生命周期 内置名称空间:解释器生效内置名称空间即生效,解释器关闭即失效. 全局名称空间:.py文件生效全局名称空间生效,代码执行结束后失效…
一.名称空间:(有3类) (1)内置名称空间(全局作用域) (2)全局名称空间(全局作用域) (3)局部名称空间(局部作用域) 关于名称空间的查询: x=1 def func(): print('from func') x=2 a=1 b=2 print(globals())#打印全局名称空间 print(locals())#打印局部名称空间 func() 执行结果是: from func {'__name__': '__main__', '__doc__': None, '__package_…
一.函数对象 1.函数对象:函数名存放的就是函数的地址,所以函数名也是对象,称之为函数对象 a = 10 print(a,id(a)) def fn(): num = 10 print('fn fuction run') print(fn()) b = a print(b,id(b)) 2.函数对象的四个应用 ①可以直接被引用fn=cp_fn def fn(): num = 10 print('fn function run') print(fn) def fn(): num = 10 prin…
今日内容 1.函数对象 2.名称空间与作用域 3.函数的嵌套调用与闭包 4.装饰器 一.函数对象 1.1 定义 函数名存放的就是函数地址,所以函数名也就是对象,称之为函数对象 1.2 函数对象的应用 1.可以直接被引用 2.可以当作函数参数传数 3.可以作为函数的返回值 4.可以作为容器类型的元素 def fn(): num = 10 print('fn function run') # 直接被引用 func = fn fn() func() 案例:四则运算 def add(n1, n2): r…