python------函数嵌套及作用域链】的更多相关文章

楔子 假如有一个函数,实现返回两个数中的较大值: def my_max(x,y): m = x if x>y else y return mbigger = my_max(10,20)print(bigger) 之前是不是我告诉你们要把结果return回来你们就照做了?可是你们有没有想过,我们为什么要把结果返回?如果我们不返回m,直接在程序中打印,行不行? 来看结果: >>> def my_max(x,y): ... m = x if x>y else y ... >&…
命名空间 -------‘’存放名字与值的关系”的空间 代码在运行伊始,创建的存储“变量名与值的关系”的空间叫做全局命名空间: 在函数的运行中开辟的临时的空间叫做局部命名空间. 命名空间一共分为三种: 全局命名空间 局部命名空间 内置命名空间 *内置命名空间中存放了python解释器为我们提供的名字:input,print,str,list,tuple...它们都是我们熟悉的,拿过来就可以用的方法. 三种命名空间之间的加载与取值顺序: 加载顺序:内置命名空间(程序运行前加载)->全局命名空间(程…
孤荷凌寒自学python第十九天python函数嵌套与将函数作为返回对象及闭包与递归 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) Python函数非常的灵活,今天学习了python函数的以下几个知识点: 一.在函数中可以定义子函数,并且可以将子函数作为函数的返回对象返回给外部 测试: def myconnecttostring(*args): def fin(): strResult='' for strA in args:  #这儿函数fin使用的是它的父函数myconnectto…
1.三元运算if条件成立的结果 if 条件 else 条件不成立的结果例如: a=20 b=10 c=a if a>b else b print(c) 2.命名空间 全局命名空间:创建的存储“变量名与值的关系”的空间叫做全局命名空间  局部命名空间:在函数的运行中开辟的临时的空间叫做局部命名空间 内置命名空间:内置命名空间中存放了python解释器为我们提供的名字:input,print,str,list,tuple...它们都是我们熟悉的,拿过来就可以用的方法. 三种命名空间之间的加载顺序和取…
1.三元运算if条件成立的结果 if 条件 else 条件不成立的结果例如: a=20 b=10 c=a if a>b else b print(c) 2.命名空间 全局命名空间:创建的存储"变量名与值的关系"的空间叫做全局命名空间  局部命名空间:在函数的运行中开辟的临时的空间叫做局部命名空间 内置命名空间:内置命名空间中存放了python解释器为我们提供的名字:input,print,str,list,tuple...它们都是我们熟悉的,拿过来就可以用的方法. 三种命名空间之…
1. day 09 内容复习 # 函数 # 可读性强 复用性强 # def 函数名(): # 函数体 #return 返回值 # 所有的函数 只定义不调用就一定不执行 #先定义后调用 #函数名() #不接收返回值 #返回值 = 函数名() #接收返回值 #返回值 # 没有返回值 :默认返回None # 不写return:函数内的代码执行完毕自动结束 # 只写return:结束一个函数 # return None # 返回一个值 :结束了函数且返回一个值,可以是任意的值 # 返回多个值 : 多个值…
一.函数对象 函数是第一类对象:函数的内存地址(即函数名)可以像一个变量值一样去使用 1.变量值可以被引用,例如 x = 1,y = x def foo(): print('from foo') f = foo # 变量值(函数名)被引用 print(f) f() 2.变量值可以当作参数传给另外一个函数 def foo(): print('from foo') def bar(x): print(x) x() bar(foo) # 函数名当作参数传给另外一个函数 3.变量值可以当作函数的返回值…
函数总结 # 函数的定义:def func(a, b):    print(a, b)    return a + b​​# 函数四个组成部分# 函数名:调用函数的依据,必须的# 函数体:执行函数逻辑的,必须的# 参数列表:为函数内部提供资源,非必须的# 返回值:将函数执行结果返回给外界,(非必须的)​# 返回值:空返回(没有return|空return) | 一值返回 | 多值返回:装有多个值的元组​# 参数列表:# 实参:外界调用函数传入的参数,拥有实际值# 形参:函数定义时,()中定义用来…
一.函数及变量的作用   在python程序中,函数都会创建一个新的作用域,又称为命名空间,当函数遇到变量时,Python就会到该函数的命名空间来寻找变量,因为Python一切都是对象,而在命名空间中,都是以字典形式存在着,这些变量名,函数名都是索引,而值就是,对应的变量值和函数内存地址.在python中可以用globals()查看全局变量,locals()局部变量. >>> global_v = '全局变量' >>> def func(): ... local_v =…
# def max(a,b): # return a if a>b else b # # def the_max(x,y,z): #函数的嵌套调用 # c = max(x,y) # return max(c,z) # # print(the_max(1,2,3)) #函数的嵌套定义 #内部函数可以使用外部函数的变量 # a = 1 # def outer(): # a = 1 # def inner(): # a = 2 # def inner2(): # nonlocal a #声明了一个上面…