致一路走来的Python爱好者——Python学习之路⑥

前言

首先说明一下本篇无干货,全程实列,主要将前面学过的知识点转化为实例应用一下,共同完成我们的第一个小型程序用户登录校验功能(注:所有的代码和程序变化都是应用了前几篇博客中的基础知识,如果有观众姥爷看不懂,请回戳前面知识点,品读完毕后,再回看本篇)
HaoXuan
如果不信请往下看,保证你头晕眼花
运行反馈
HaoXuan
基础代码框架

# -*- coding: utf-8 -*- 
# @Time : 2020/2/17 22:13
# @Author : 浩轩
# @File : 09_用户登录信息效验.py
'''
案列:用户登录信息校验
'''
'''
要求:
    用户输入用户名,密码后对信息进行校验
    1.用户长度在3-8个字符
    2.用户中只能出现英文字母和数字
    3.密码长度必须是6位
    4.密码必须由纯数字组成
    '''
  #注:此处需要重新创建一个目录贴放此框架
from Bag.bus import *
from Bag.exc import *
#读取缓存


# 拿到用户信息
name = input('请输入您的用户名:')
pwd = input('请输入您的密码:')


# 自定义异常,可以拿走,放入独立的包中去保存,当成模块文件



# 校验账号和密码是否符合规范    可以拿走,当做模块文件导入



# 拦截异常
try:
    check(name, pwd)
except NameError as e:     ##此处拦截的是1.用户长度在3-8个字符
    print(e)
except PwdIsError as e:
    print(e)

首先呐说明一下,这是一个基础的框架,整体的代码还没填进去,所以如果想往下看,请细品此框架。
HaoXuan
对程序进行封装简化
封装后的程序运行如下图:
HaoXaun

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time    : 2020/2/27 18:31
# @Author  : HaoXuan
# @Email   : [email protected]
# @File    : 10_用户登录信息校验.py
# @Software: PyCharm
'''
案列:用户登录信息校验
'''
'''
要求:
    用户输入用户名,密码后对信息进行校验
    1.用户长度在3-8个字符
    2.用户中只能出现英文字母和数字
    3.密码长度必须是6位
    4.密码必须由纯数字组成
'''

# 拿到用户信息
name = input('请输入您的用户名:')
pwd = input('请输入您的密码:')


# 自定义异常,可以拿走,放入独立的包中去保存,当成模块文件
class NameIsError(Exception):
    pass


class PwdIsError(Exception):
    pass



# 校验账号和密码是否符合规范    可以拿走,当做模块文件导入
def check(name, pwd):
    '''判断用户和密码是否符合规范'''
    # 1.用户长度在3-8个字符
    if len(name) < 3 or len(name) > 8:
        raise NameIsError('用户名的长度应该在3-8个字符之间')

    # 2.用户中只能出现英文字母和数字
    if not name.isalnum():  # 满足标识符,字母,数字,下划线
        raise NameIsError('用户中只能出现英文字母和数字')

    # 3.密码长度必须是6位
    if len(pwd) != 6:
        raise PwdIsError('密码长度必须是6位')

    # 4.密码必须由纯数字组成
    if not pwd.isdigit():
        raise PwdIsError('密码必须由纯数字组成')



# 拦截异常
try:
    check(name, pwd)
except NameError as e:     ##此处拦截的是1.用户长度在3-8个字符
    print(e)
except PwdIsError as e:
    print(e)

整体的代码如上,已填出,请细品
HaoXuan
@Author:HaoXuan

发布了13 篇原创文章 · 获赞 25 · 访问量 2969

猜你喜欢

转载自blog.csdn.net/kangqiao0422/article/details/104858754
今日推荐