欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python使用裝飾器模擬用戶登陸驗(yàn)證功能示例

 更新時(shí)間:2018年08月24日 08:41:04   作者:我是馬克思小清新  
這篇文章主要介紹了Python使用裝飾器模擬用戶登陸驗(yàn)證功能,結(jié)合登錄驗(yàn)證實(shí)例形式分析了裝飾器的簡(jiǎn)單使用技巧,需要的朋友可以參考下

本文實(shí)例講述了Python使用裝飾器模擬用戶登陸驗(yàn)證功能。分享給大家供大家參考,具體如下:

# -*- coding:utf-8 -*-
#!python3
user_list = [
  {'name':'ad1','passwd':'123'},
  {'name':'ad2','passwd':'123'},
  {'name':'ad3','passwd':'123'},
  {'name':'ad4','passwd':'123'}
]
#初始狀態(tài),用來保存登陸的用戶,
client_dic = {'username':None,'login':False}
#添加新功能
def auth_func(func):
  def wrapper(*args,**kwargs):
    #參數(shù)檢查,判斷是否有用戶登錄,如果有,不用驗(yàn)證,直接執(zhí)行函數(shù)的功能
    if client_dic['username'] and client_dic['login']:
      res = func(*args,**kwargs)
      return res
    #輸入用戶名和密碼
    username = input('用戶名:').strip()
    passwd = input('passwd:').strip()
    #對(duì)比列表,檢查用戶名和密碼是否正確
    for user_dic in user_list:
      if username == user_dic['name'] and passwd == user_dic['passwd']:
        client_dic['username'] = user_dic['name']
        client_dic['login'] = True
        res = func(*args,**kwargs)
        return res
    else:
      print('用戶名或者密碼錯(cuò)誤!')
  return wrapper
@auth_func
def index():
  print("歡迎來到主頁(yè)")
@auth_func
def home(name):
  print("歡迎回家:%s"%name)
@auth_func
def shoppping_car():
  print('購(gòu)物車?yán)镉衃%s,%s,%s]'%('奶茶','妹妹','娃娃'))
print(client_dic)
index()
print(client_dic)
home('root')

運(yùn)行結(jié)果:

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python編碼操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Python+tkinter實(shí)現(xiàn)網(wǎng)站下載工具

    Python+tkinter實(shí)現(xiàn)網(wǎng)站下載工具

    這篇文章主要為大家詳細(xì)介紹了如何利用Python+tkinter實(shí)現(xiàn)網(wǎng)站下載工具,實(shí)現(xiàn)所有數(shù)據(jù)一鍵獲取,文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2023-03-03
  • python?密碼驗(yàn)證(滑塊驗(yàn)證)

    python?密碼驗(yàn)證(滑塊驗(yàn)證)

    滑塊密碼在很多登錄界面都可以看到,本文主要介紹了python?密碼驗(yàn)證(滑塊驗(yàn)證),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • python清除字符串中間空格的實(shí)例講解

    python清除字符串中間空格的實(shí)例講解

    今天小編就為大家分享一篇python清除字符串中間空格的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • python基礎(chǔ)教程之簡(jiǎn)單入門說明(變量和控制語(yǔ)言使用方法)

    python基礎(chǔ)教程之簡(jiǎn)單入門說明(變量和控制語(yǔ)言使用方法)

    這篇文章主要介紹了開始學(xué)習(xí)python的第一步需要知道的知識(shí)(變量和控制語(yǔ)言使用方法),需要的朋友可以參考下
    2014-03-03
  • Python線程指南分享

    Python線程指南分享

    今天小編就為大家?guī)鞵ython線程指南分享,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 如何用Python 加密文件

    如何用Python 加密文件

    這篇文章主要介紹了如何用Python 加密文件,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-09-09
  • 基于Python實(shí)現(xiàn)語(yǔ)音合成小工具

    基于Python實(shí)現(xiàn)語(yǔ)音合成小工具

    TTS(Text To Speech)是一種語(yǔ)音合成技術(shù),可以讓機(jī)器將輸入文本以語(yǔ)音的方式播放出來,實(shí)現(xiàn)機(jī)器說話的效果。本文將使用pyttsx3庫(kù)作為示范,編寫一個(gè)語(yǔ)音合成小工具,感興趣的可以了解一下
    2022-12-12
  • 使用Eclipse如何開發(fā)python腳本

    使用Eclipse如何開發(fā)python腳本

    這篇文章主要為大家詳細(xì)介紹了使用Eclipse開發(fā)python腳本的相關(guān)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • 使用Python3?Boto3包刪除AWS?CloudFormation的棧(Stacks)

    使用Python3?Boto3包刪除AWS?CloudFormation的棧(Stacks)

    這篇文章主要介紹了如何使用Python3?Boto3刪除AWS?CloudFormation的棧(Stacks),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2024-01-01
  • Numpy數(shù)組的轉(zhuǎn)置和軸交換的實(shí)現(xiàn)

    Numpy數(shù)組的轉(zhuǎn)置和軸交換的實(shí)現(xiàn)

    本文主要介紹了Numpy數(shù)組的轉(zhuǎn)置和軸交換的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03

最新評(píng)論