使用者登入:
- 登陸
- 退出
系統管理員功能:
- 1.新增使用者
- 4.檢視所有使用者資訊
- 5.退出:
普通使用者功能:
- 1.檢視個人資訊
- 2.登出
- 2.退出
1. 根據使用者身份,進入不同的管理介面;
2. 系統初始化乙個系統管理員帳號;
3. 只有系統管理員可以新增使用者和檢視使用者所有資訊;
4. 普通使用者只能檢視個人資訊,和登出帳號;
#!/usr/bin/env python
#coding=utf-8
"""file:login3.py
date:9/2/17 8:07 pm
author:wangweibo
desc:
"""logintable=
guanliyuanjiemian="""
1.新增使用者
2.檢視所有使用者資訊
3.退出:
"""putongyonghujiemian="""
1.檢視個人資訊
2.登出
3.退出
"""def
adduser
(): newuser=raw_input("請輸入使用者名稱:")
newpasswd=raw_input("請輸入密碼:")
newname=raw_input("請輸入使用者身份(0-普通使用者,1-管理員):")
logintable.setdefault(newuser,[newname,newpasswd])
print
"新增使用者成功"
defdeluser
(): olduser=raw_input("請輸入使用者名稱:")
oldpasswd=raw_input("請輸入密碼:")
if logintable.has_key(olduser):
if oldpasswd in logintable.get(user):
logintable.pop(olduser)
else:
print
"密碼錯誤"
else:
print
"帳號不存在"
defshowuser
(user,name):
if name==1:
for key,value in logintable.items():
print key,value[0],value[1]
else:
for key, value in logintable.items():
if key == user:
print key, value[0], value[1]
defguanliyuan
(user,passwd):
if passwd not
in logintable.get(user):
print
"密碼錯誤"
else:
while
true:
chiose=input(guanliyuanjiemian)
# d=
# if d.has_key(chiose):
# d[chiose]
# else:
# break
if chiose == 1:
adduser()
elif chiose == 2:
showuser(user,1)
else:
break
defputongyonghu
(user,passwd):
if passwd not
in logintable.get(user):
print
"密碼錯誤"
else:
while
true:
chiose = input(putongyonghujiemian)
# d =
# if d.has_key(chiose):
# d[chiose]
# else:
# break
if chiose == 1:
showuser(user, 0)
elif chiose == 2:
deluser()
else:
break
logintime = 0
while logintime<3:
user=raw_input("請輸入使用者名稱:")
passwd=raw_input("請輸入密碼:")
if logintable.has_key(user):
if1in logintable.get(user) : #1 管理員
guanliyuan(user,passwd)
break
else:
putongyonghu(user,passwd)
break
else:
print
"帳號不存在"
logintime+=1
if logintime == 3:
print
"登陸超過三次,登陸失敗"
完成登陸功能
效果展示 登陸功能講解 在sql表中,last lock time表示上次鎖定的時間 當使用者在介面輸入密碼錯誤時,其login fail count次數就會加1 當次數到達3的時候 則會鎖定該使用者 提示使用者5分鐘後再登陸,當使用者登陸成功的時候 就會將其login fail count設為0次...
python 字典運用 註冊登陸系統
user data def new user prompt 請輸入使用者名稱 while 1 name input prompt if name in user data prompt 此使用者名稱已經被使用,請重新輸入 continue else break passwd input 請輸入密碼 ...
python模擬登陸,用session維持回話
客戶端向伺服器傳送請求,cookie則是表明我們身份的標誌。而 訪問登入後才能看到的頁面 這一行為,恰恰需要客戶端向伺服器證明 我是剛才登入過的那個客戶端 於是就需要cookie來標識客戶端的身份,以儲存它的資訊 如登入狀態 1,先在瀏覽器中登入,然後開啟開發者選項,找到乙個請求方法為post的請求...