PTA 1081 检查密码 (15 分)

简介: 本题要求你帮助某网站的用户注册模块写一个密码合法性检查的小功能。该网站要求用户设置的密码必须由不少于6个字符组成,并且只能有英文字母、数字和小数点 .,还必须既有字母也有数字。

题目


本题要求你帮助某网站的用户注册模块写一个密码合法性检查的小功能。该网站要求用户设置的密码必须由不少于6个字符组成,并且只能有英文字母、数字和小数点 .,还必须既有字母也有数字。


输入格式: 输入第一行给出一个正整数 N(≤ 100),随后 N 行,每行给出一个用户设置的密码,为不超过 80 个字符的非空字符串,以回车结束。


注意: 题目保证不存在只有小数点的输入。


输出格式: 对每个用户的密码,在一行中输出系统反馈信息,分以下5种:


如果密码合法,输出Your password is wan mei.; 如果密码太短,不论合法与否,都输出Your password is tai duan le.; 如果密码长度合法,但存在不合法字符,则输出Your password is tai luan le.; 如果密码长度合法,但只有字母没有数字,则输出Your password needs shu zi.; 如果密码长度合法,但只有数字没有字母,则输出Your password needs zi mu.。


输入样例:
5
123s
zheshi.wodepw
1234.5678
WanMei23333
pass*word.6
输出样例:
Your password is tai duan le.
Your password needs shu zi.
Your password needs zi mu.
Your password is wan mei.
Your password is tai luan le.

解题思路

N = int(input())
# N = int(5)
for _ in range(N):
    inputStr = str(input())
    # inputStr = str("pass*word.6")
    # print(inputStr.isnumeric())
    # print(len(inputStr))
    if len(inputStr)<6:
        print("Your password is tai duan le.")
        continue
    hasZimu = False
    hasShuzi = False
    hasBuhefazimu = False
    for i in inputStr:
        if i.isalpha():
            hasZimu = True
        if i.isnumeric():
            hasShuzi = True
        if i.isalpha() == False and i.isnumeric() == False and i != ".":
            hasBuhefazimu = True
    if hasBuhefazimu:
        print("Your password is tai luan le.")
        continue
    if hasZimu == True and hasShuzi == False:
        print("Your password needs shu zi.")
    elif hasZimu == False and hasShuzi == True:
        print("Your password needs zi mu.")
    elif hasZimu == True and hasShuzi == True:
        print("Your password is wan mei.")


目录
相关文章
|
6月前
|
C++
【PTA】L1-016 验证身份(C++)
【PTA】L1-016 验证身份(C++)
86 0
【PTA】L1-016 验证身份(C++)
|
20天前
欧拉系统如何修改ip
【10月更文挑战第22天】欧拉系统如何修改ip
496 1
|
5月前
|
数据安全/隐私保护
1081 检查密码 (15 分)
1081 检查密码 (15 分)
|
5月前
|
数据安全/隐私保护
1067 试密码 (20 分)
1067 试密码 (20 分)
|
6月前
|
弹性计算 运维 Shell
|
6月前
|
弹性计算 运维 Shell
|
6月前
|
数据安全/隐私保护
HJ20 密码验证合格程序
HJ20 密码验证合格程序
45 0
验证“哥德巴赫猜想”
验证“哥德巴赫猜想”
52 0
|
数据安全/隐私保护
华为机试HJ20:密码验证合格程序
华为机试HJ20:密码验证合格程序
|
机器学习/深度学习 数据安全/隐私保护
(leecode)密码检查
小明同学最近开发了一个网站,在用户注册账户的时候,需要设置账户的密码,为了加强账户的安全性,小明对密码强度有一定要求: 1. 密码只能由大写字母,小写字母,数字构成; 2. 密码不能以数字开头; 3. 密码中至少出现大写字母,小写字母和数字这三种字符类型中的两种; 4. 密码长度至少为8
74 0
(leecode)密码检查