1.全局变量与局部变量
全局变量作用域是整个程序
局部变量只作用再局部
#如果函数的内容无global关键字,优先读取局部变量,能读取全局变量,无法对全局变量重新赋值,但是对于可变类型,可以对内部元素进行操作,NAME = “fff”
#如果函数的内容有global关键字,变量本质上就是全局变量,可读取可复制
global指全局变量
nonlocal指上级变量
2.函数即变量
3.递归:(即调用自己本身)
例: import time p_list=["aa","bb","cc","dd","ee"] def ask_way(p_list): print("-"*10) if len(p_list) == 0: return "没人知道" person = p_list.pop(0) if person == "dd": return "%s 说:我知道怎么去宠物商店" % person print("hi,%s,宠物商店怎么走" % person) print("%s回答:我不知道,我帮你问问%s。。。" % (person,p_list)) time.sleep(5) res = ask_way(p_list) print("%s问的结果是:%res" % (person,res)) return res res = ask_way(p_list) print(res) 结果: ---------- hi,aa,宠物商店怎么走 aa回答:我不知道,我帮你问问['bb', 'cc', 'dd', 'ee']。。。 ---------- hi,bb,宠物商店怎么走 bb回答:我不知道,我帮你问问['cc', 'dd', 'ee']。。。 ---------- hi,cc,宠物商店怎么走 cc回答:我不知道,我帮你问问['dd', 'ee']。。。 ---------- cc问的结果是:'dd 说:我知道怎么去宠物商店'es bb问的结果是:'dd 说:我知道怎么去宠物商店'es aa问的结果是:'dd 说:我知道怎么去宠物商店'es dd 说:我知道怎么去宠物商店
4.作用域
5.匿名函数
6.编程式函数
map
filter函数
reduce函数
------