标签:put 失败 ica 新功能 flag 查找 NPU cti strong
名称空间指存放名字的地方
名称空间分为三种:
闭包是指内部函数包含对外部作用域而非全局作用域的引用,即:A函数里再定义一个b函数(嵌套函数)而B函数里调了A函数的变量,而A函数返回值是B函数的引用,这样就构成了闭包
def fun():
name = ‘ab‘
def fun1():
print(‘fun1‘,name)
return fun1
a = fun()
a()
闭包的意义:返回的函数对象,不仅仅是一个函数对象,在该函数外还包裹了一层作用域,这使得,该函数无论在何处调用,优先使用自己外层包裹的作用域
装饰器他人的器具,本身可以是任意可调用对象,被装饰者也可以是任意可调用对象。
强调装饰器的原则:
程序员应该尊守封闭,开发原则!
flag = False
def login(fun):
def ineer(*args,**kwargs):
username = ‘alex‘
password = ‘123‘
global flag
if flag == False:
_username = input(‘user:‘).strip()
_passwd = input(‘passwd:‘).strip()
if _username == username and _passwd == password:
print(‘登陆成功‘)
flag = True
else:
print(‘登陆失败‘)
if flag == True:
return fun(*args,**kwargs)
return ineer
def home():
print("---首页----")
@login
def america():
#login() #执行前加上验证
print(‘用户已登陆,不需要验证‘)
print("----欧美专区----")
def japan():
print("----日韩专区----")
@login #想当于henan = login(henan)
def henan(style):
‘‘‘
:param style: 喜欢看什么类型的,就传进来
:return:
‘‘‘
#login() #执行前加上验证
print("----河南专区----")
henan(‘3p‘) #实际调用的是inner函数
america()
标签:put 失败 ica 新功能 flag 查找 NPU cti strong
原文地址:https://www.cnblogs.com/yjiu1990/p/9057435.html