day 05雙層裝飾器原理 字串格式化

2021-07-14 06:30:50 字數 1666 閱讀 4068

1.執行是從外層呼叫裡層

2.呼叫有返回值,從最裡面往最外面返回,

3.

def check_login(func):

def inner(*args,**kwargs):

if user_info.get("login_status",none)==true:

func(*args,**kwargs)

else:

print("請登入")

return inner

def check_info(func):

def inner(*args,**kwargs):

if user_info["login_number"]==2:

et=func(*args,**kwargs)

return et

else:

print("沒有許可權")

return inner

@check_login

@check_info

def index():

print("index")

@check_login

def home():

print("home")

def login():

username=input("請輸入你的賬號")

if username=="admin":

user_info["login_status"]=true

user_info["login_number"]=2

else:

user_info["login_status"]=true

user_info["login_number"]=1

def main():

while true:

choose_number=input("1.登入 2.檢視資訊 3.高階管理員")

if choose_number=="1":

login()

elif choose_number=="2":

home()

elif choose_number=="3":

index()

else:

print("輸入錯誤請重新輸入")

main()

#+號不能用於d的前面  下面的10代表的是佔位符 如果是正數,** ,如果引數是正數,則前面加+號

s="發發發發發發史蒂芬的地方 %(name)-10s fsdfsd%(age)+10d"%()

print(s)

發發發發發發史蒂芬的地方 agex       fsdfsd       +50

pp="fsdfsdfsd %c %o %x  %e"%(65,15,15,12020202022)#c 是ascii碼 o 是八進位制, x是十六進製制

print(pp)

#%g是自動在浮點型和科學計數法直接轉換

pp="fsdfsdfsd %c %o %x %g"%(65,15,15,123)

print(pp)

p="fsd %"

print(p)

p="fsdfsd %s %%"%("ag")#如果出現佔位符,得用兩個百分號表示乙個百分號

print(p)

fsd %

fsdfsd ag %

day05 陣列 排序

pragma mark 陣列 變數實際上就是乙個容器,陣列也是乙個容器,這個容器可以儲存更多的內容。1.陣列屬於構造型別 2.具有相同資料型別的成員組成一組陣列。3.儲存不同型別的陣列有對應的名稱,如 ios班 安卓版,同理,整數型別 陣列中的成員都是整數,浮點型陣列,陣列中的成員是浮點型。4.陣列...

遊戲開發Day05

1.建立材質球 2.更改shader屬性 3.新增6張材質圖 window lighting skybox 給目標物體新增自定義指令碼colliderchecked 重寫oncollisionenter方法 bool flag true void oncollisionenter else 1.新建...

迴圈練習day05

語法 表示式1 表示式 2 表示式3 運算規則 判斷表示式1的結果是否為真,為真則整個三目運算表示式的結果是表示式2的值,否則就是表示式3的值 a 10 20 30 40 print a 40 語法 表示式2 if 表示式1 else 表示式3 運算規則 判斷表示式1的結果是否為真,為真則整個三目運...