您的位置:首页 > 编程语言 > Python开发

Python登录验证小程序脚本

2017-09-20 22:24 381 查看
Python登录验证小程序脚本(只是简单的输入验证流程,无严格的字符输入过滤判定)
脚本程序流程图:


警告:使用此脚本前请先看清楚流程图:笔者的判断“输入次数>3?”是对输入用户和密码都为非空后进行的判断,别不看清楚流程就瞎判定不能退出。
倘若要对“输入次数>3?”包括整个输入过程(输入为空和非空):注意python对缩进很严格!可看下文login.py-v2.0
请在if语句下添加
retry_counter += 1
并修改相应的错误提示:
print 'ERROR : Username cannot be empty! Only %s more chances!' % (3 - retry_counter  )


login.py-v1.0:
#!/usr/bin/env python
# _*_ coding:utf-8 _*_
#输入以上一行才可以识别中文字符注释#
# -------------------------------------------------------------------------------
# FileName:    login.py
# Revision:    1.0
# Date:        2017/09/20
# Author:      XAD
# Email:       1793360097@qq.com
# Website:     http://onenice.blog.51cto.com/ # Description: check login
# Notes:       ~此版本计数器在判定输入都为非空后生效
# -------------------------------------------------------------------------------
# Copyright:   2017(c)XAD
# License:     GPL

import sys
username = 'xad'
password = 'xad123'
retry_counter = 0
#login_status = 'NO'
login_status = 'YES'
#用这个来模拟用户是否已在线#

# login verification part #
while retry_counter <3 :
#当retry_counter !在判定输入都为非空后才计数!大于3次则退出#
user = raw_input('Username:').strip()
if len(user) ==0:
#验证输入用户是否为空,是则继续循环,否则进入下一步验证输入#
print "ERROR : Username cannot be empty!"
continue
passwd = raw_input('Password:').strip()
if len(passwd) == 0:
#验证输入密码是否为空,是则继续循环,否则跳出循环#
print "ERROR : Password cannot be empty!"
continue
else:
if user == username  and  passwd == password:
#验证用户密码是否都正确,都正确才允许登录!#
if login_status == 'YES':
sys.exit('Sorry, user %s has been logining!' % user )
else:
sys.exit('Welcome %s logining to system!' % user )
else:
#retry_counter = retry_counter + 1
retry_counter += 1
print 'Wrong username or password, please verify your username or password ! \nOnly %s more chances!' % (3 - retry_counter  )


login.py-v2.0:



#!/usr/bin/env python
# _*_ coding:utf-8 _*_
#输入以上一行才可以识别中文字符注释#
# -------------------------------------------------------------------------------
# FileName:    login.py
# Revision:    2.0
# Date:        2017/09/22
# Author:      XAD
# Email:       1793360097@qq.com
# Website:     http://onenice.blog.51cto.com/ # Description: check login
# Notes:       ~计数器全程输入生效
# -------------------------------------------------------------------------------
# Copyright:   2017(c)XAD
# License:     GPL

import sys
username = 'xad'
password = 'xad123'
retry_counter = 0
#login_status = 'NO'
login_status = 'YES'
#用这个来模拟用户是否已在线#

# login verification part #
while retry_counter <3 :
#当retry_counter 大于3次则退出#
user = raw_input('Username:').strip()
if len(user) ==0:
#验证输入用户是否为空,是则继续循环并计数,否则进入下一步验证输入#
retry_counter += 1
print 'ERROR : Username cannot be empty! Only %s more chances!' % (3 - retry_counter  )
continue
passwd = raw_input('Password:').strip()
if len(passwd) == 0:
#验证输入密码是否为空,是则继续循环并计数,否则跳出循环#
retry_counter += 1
print 'ERROR : Password cannot be empty! Only %s more chances!' % (3 - retry_counter  )
continue
else:
if user == username  and  passwd == password:
#验证用户密码是否都正确,都正确才允许登录!#
if login_status == 'YES':
sys.exit('Sorry, user %s has been logining!' % user )
else:
sys.exit('Welcome %s logining to system!' % user )
else:
#retry_counter = retry_counter + 1
retry_counter += 1
print 'Wrong username or password, please verify your username or password ! \nOnly %s more chances!' % (3 - retry_counter  )
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  流程图 脚本 python