文章目录

  • 一.英雄联盟登陆
  • 二.md5盐值登陆注册页面


一.英雄联盟登陆

import random
while True:
    print("\t\t\t英雄联盟商城界面\n")
    print("~*"*25)
    print("\t\t\t1.用户登录\n")
    print("\t\t\t2.用户注册\n")
    print("\t\t\t3.退出系统\n")
    print("~*"*25)

    a = int(input('请输入你的选项1-3:'))
    if a == 1:
        username =input('请输入你的用户名:')
        password = input('请输入你的密码:')
        if username=='幼杀快发歌吧' and password == '8888':
            print('恭喜您,登陆成功')
            while True:
                print("\t\t\t英雄联盟商城界面\n")
                print("~*" * 25)
                print("\t\t\t1.进入英雄商店\n")
                print("\t\t\t2.休闲小游戏\n")
                print("\t\t\t3.退出登陆\n")
                print("~*" * 25)
                choice = input('请输入您的选择:')
                if choice == '1':
                    print('新款皮肤2.8折,您需要支付50')
                    num = int(input('请你输入您要购买的数量:'))
                    sum1 = num * 50
                    print('您购买的皮肤,需要支付的金额是:', sum1)
                    pay = int(input('请支付商品需要的金额:'))
                    # 循环 支付错误需要重新支付
                    if pay == sum1:
                        print('恭喜,购买成功')
                    else:
                        print('抱歉,支付金额有问题,请重新支付')
                elif choice == '2':
                    print('成功进入休闲小游戏')
                    words = ('python', 'jumble', 'easy', 'difficult', 'answer', 'continue', 'phone', 'position', 'game')
                    right = 'Y'
                    print("欢迎参加猜单词游戏!")
                    while right == 'Y' or right == 'y':
                        word = random.choice(words)#选择一个单词
                        correct = word
                        new_word = ''
                        while word: #把每个下标的字母循环取出来
                            pos = random.randrange(len(word))
                            new_word += word[pos]
                            # 将word单词下标为pos的字母去掉,取pos前面和后面的字母组成新的word
                            word = word[:pos] + word[(pos + 1):]  # 除去选出来的字母
                        print("你要猜测的单词为:", new_word)
                        guess = input("请输入你的答案:")
                        count = 1
                        while count < 5:
                            if guess != correct:
                                guess = input("输入的单词错误,请重新输入:")
                                count += 1
                            else:
                                print("输入的单词正确,正确单词为:", correct)
                                break
                        if count == 5:
                            print("您已猜错5次,正确的单词为:", correct)
                        right = input("是否继续,Y/N:")

                else:
                    break

        else:
            print('用户名或密码错误,请重新登陆,按任意键继续:')
    elif a == 2:
        phone = input('请输入你要注册的手机号:')
        b = len(phone) #手机号长度
        if b == 11:
            c = input('请输入短信验证码:')
            d = len(c)
            if d == 6:
                password1 = input('请输入密码:')
                password2 = input('请再次输入密码:')
                if password1 == password2 and len(password1) <= 8:
                    print('恭喜你,注册成功')

                else:
                    print('两次密码输入不一致或设置密码过短,请重新注册')
            else:
                print('短信验证码输入有误,请重新输入')
        else:
            print('手机输入错误,请重新输入')
    elif a == 3:
        break

二.md5盐值登陆注册页面

import hashlib
import sys
import pickle

#用来存储所有的用户信息
users = []
slat = '%$#%&*%%##'


def init():
    global users
    #初始化数据
    users = pickle.load(open('登陆.txt', 'rb'))
    print(users)


#用来存储所有的用户信息
def save_data():
    #转换对象为字节:
    save_users = pickle.dumps(users)
    f = open('登陆.txt', 'wb')
    f.write(save_users)
    print('保存完成')
    f.close()


def password_md5(password):
    md5 = hashlib.md5(password.encode('utf-8'))
    #盐值混淆
    md5.update(slat.encode('utf-8'))
    return md5.hexdigest()


def main():
    print('\t\t 1.用户注册')
    print('\t\t 2.用户登录')
    print('\t\t 3.查询所有用户信息')
    print('\t\t 4.退出系统')
    print('~*'* 20)
    choice = input('请输入您要操作的选项:')
    return choice


def register():
    username = input('请输入你的用户名称:')
    password = input('请输入你的用户密码:')
    #保存前要校验数据
    if username == None or username.strip() == ' ':
        print('用户名不能为空')
        return
    if password == None or password.strip() == ' ' or len(password) < 3:
        print('密码长度不能小于3')
        return
    if exits_user(username):
        print('对不起,该用户已经存在,请重新输入')
        return

    #组建成一个字典对象
    user = {}
    user['username'] = username
    user['password'] = password_md5(password)
    users.append(user)

    #验证
    print(users)
    print('开始保存用户')
    save_data()


def exits_user(username):
    for i in users:
        if i.get('username') == username:
            return True
        return False


def is_login(username, password):
    for i in users:
        if i.get('username') == username and i.get('password') == password:
            print('登陆成功')
            return True
    return False


def login():
    username = input('请输入用户名:')
    password = input('请输入用户密码:')

    #加密密码
    password = password_md5(password)
    if is_login(username, password):
        print('恭喜你登陆成功')
    else:
        print('对不起,登陆失败,请重新登陆')
    init()


while True:
    choice = main()
    if choice == '1':
        print('用户注册')
        register()
    elif choice == '2':
        print('用户登陆')
        login()
    elif choice == '3':
        print('显示所有用户')
        print(users)
    else:
        print('程序正常退出')
        sys.exit(0)

运行结果:

python gui登录注册 python登录注册界面_python gui登录注册