1.登陸賬號
user_dic =defauth_func(func):
if user_dic['
username
'] and user_dic['
login']:
res = func(*args,**kwargs)
return
res username = input('
賬號:'
).strip()
passwd = input('
密碼:'
).strip()
if username == '
abcd
'and passwd == '
123456':
user_dic[
'username
'] =username
user_dic[
'login
'] =true
print('
登陸成功!')
res=func(*args,**kwargs)
return
res
else
:
print('
使用者名稱或密碼錯誤')
return
@auth_func
defindex():
print('')
@auth_func
defhome(name):
print('
歡迎%s回家
' %name)
index()
home('小明
')
執行結果:
賬號:abcd密碼:123456登陸成功!
歡迎小明回家
process finished with exit code 0
2.檢測已有賬號登陸
user_list=[,,,]user_dac = #
獲取剛開始登陸之前的狀態
defauth_func(func):
if user_dac['
username
'] and user_dac['
login
']: #
獲取剛開始登陸之前的狀態,是否已登入
res = func(*args,**kwargs)
return
res username = input('
賬號:'
).strip()
passwd = input('
密碼:'
).strip()
for user_dic in
user_list:
if username == user_dic['
name
'] and passwd == user_dic['
passwd']:
user_dac[
'username
'] =username
user_dac[
'login
'] =true
print('
登陸成功!')
res=func(*args,**kwargs)
return
res
else
:
print('
使用者名稱或密碼錯誤')
return
@auth_func
defindex():
print('')
@auth_func
defhome(name):
print('
歡迎%s回家
' %name)
index()
home('sb
')
執行結果:
賬號:abd密碼:123登陸成功!
歡迎sb回家
process finished with exit code 0
Python學習 函式裝飾器
裝飾器 定義 本質是函式,裝飾其它函式,就是為其它函式新增附件功能。不能修改被裝飾函式的源 不能修改被裝飾函式的呼叫方式。高階函式 函式巢狀 import time deftime func def args,kwargs start time.time func end time.time pri...
Python基礎學習 函式裝飾器
裝飾器是python中非常實用的函式表達法,盡頭我們不講裝飾器原理,只講怎麼應用。裝飾器原理涉及物件導向以及函式本身也可以作為乙個引數被傳遞,原理比較簡單,但由於迴圈巢狀初學者難以理解。既然難以理解,那就先學會怎麼用,有了經驗,理解起來就相對容易了。首先我們要明白,裝飾器內函式是先於被裝飾函式執行的...
python學習日記(函式 裝飾器)
前提,我有一段 乙個函式 import time defrun time time.sleep 0.1 print 我曾踏足山巔 需求1 現在,我想計算這段 的執行時間。我可以這樣做 import time defrun time start time time.time time.sleep 0....