猫史档案馆


【Python作品分享】登录与注册Python版【作品秀】

用户:Liu_HaiLiu_Hai查看:0 回复:0 评论:0 创建时间:2023-04-06T13:06:15


【作品展示】

center_image

 

【作品介绍】

可以登陆或注册

可以计算体积,面积和各种普通计算

 

【作品源代码】

#导入基础库:



import os
import math
import sys
import time

# 导入第三方库
try:
    # 尝试导入
    import pygame
    import easygui
except:
    # 下载第三方库

    download_3 = {"easygui", "pygame"}
    try:
        for i in download_3:
            os.system("pip3 install"+i)
            print("Download OK!")
    except:
        print("Can't Download!")

easygui.msgbox("你好呀!欢迎来到超能计算机!", "calculator")

User_write = ["登录", "注册"]

U = easygui.buttonbox("请先登录或注册", "Windows", choices=User_write)

# 登录或注册
a = 'C:\\User and Password'
b = 'C:\\User and Password_Another'

# 注册


def new(Password, Username):

    if os.path.exists(a):
        os.mkdir(b)
        os.path.join(b, "User")
        f = open(b+"\\User", "w")
        f.write(Username + " " + Password)
        f.close()
    else:
        os.mkdir(a)
        os.path.join(a, "User")
        f = open(a+"\\User", "w")
        f.write(Username + " " + Password)
        f.close()

# 登录


def old(Password, Username):
    if os.path.exists(a) == "False":
        try:
            f_1 = open(b+"\\User", "r")
        except:
            easygui.msgbox("请先注册!", "Windows")
        f_1 = f_1.read()
        j = Username + " " + Password
        next_one = "NO"
        while(next_one == "NO"):
            if j == f_1:
                easygui.msgbox("登录成功!", "Windows")
                next_one = "OK!"
            else:
                easygui.msgbox("登录失败!请重试", "Windows")

    else:
        try:
            f_1 = open(a+"\\User", "r")
        except:
            easygui.msgbox("请先注册!", "Windows")
        f_1 = f_1.read()
        j = Username + " " + Password
        next_one = "NO"
        while(next_one == "NO"):
            if j == f_1:
                easygui.msgbox("登录成功!", "Windows")
                next_one = "OK!"
            else:
                easygui.msgbox("登录失败!请重试", "Windows")
                sys.exit()


# 主程序
if U == "注册":
    username_1 = easygui.enterbox("请输入用户名:", "Windows")
    password_1 = easygui.enterbox("请输入用户密码:", "Windows")
    new(password_1, username_1)
elif U == "登录":
    username_2 = str(easygui.enterbox("请输入用户名:", "Windows"))
    password_2 = str(easygui.enterbox("请输入用户密码:", "Windows"))
    old(password_2, username_2)
easygui.msgbox("Hi!Welcome to the calculator!", "calculator")
time.sleep(1)
lise = ['面积', "体积", "普通计算"]
a = easygui.buttonbox("你要选择计算下面那种东西?", "calculator", choices=lise)


# 普通计算
def normal_calculation():

    # 加法
    def plus():
        a_1 = easygui.enterbox("请输入第一个数字:", "calculator")
        a_2 = easygui.enterbox("请输入第二个数字:", "calculator")
        plus = int(a_1)+int(a_2)
        plus_lise = str(a_1)+"+"+str(a_2)+"="+str(plus)
        easygui.msgbox(plus_lise, "calculator")
        print("<"+plus_lise+">")

    # 减法
    def less():
        b_1 = easygui.enterbox("请输入被减数:", "calculator")
        b_2 = easygui.enterbox("请输入减数:", "calculator")
        less = int(b_1)-int(b_2)
        less_lise = str(b_1)+"-"+str(b_2)+"="+str(less)
        easygui.msgbox(less_lise, "calculator")
        print("<"+less_lise+">")

    # 乘法
    def times():
        c_1 = easygui.enterbox("请输入第一个乘数:", "calculator")
        c_2 = easygui.enterbox("请输入第二个乘数:", "calculator")
        times = int(c_1)*int(c_2)
        times_lise = str(c_1)+"×"+str(c_2)+"="+str(times)
        easygui.msgbox(times_lise, "calculator")
        print("<"+times_lise+">")

    # 除法
    def divide():
        d_1 = easygui.enterbox("请输入被除数:", "calculator")
        d_2 = easygui.enterbox("请输入除数:", "calculator")
        divide = int(d_1)/int(d_2)
        divide_lise = str(d_1)+"÷"+str(d_2)+"="+str(divide)
        easygui.msgbox(divide_lise, "calculator")
        print("<"+divide_lise+">")

    # 根号
    def radical_symbol():
        g_1 = easygui.enterbox("请输入被根出的数:", "calculator")
        radical_symbol_lise = str(g_1)+"√ = "+str(math.sqrt(int(g_1)))
        easygui.msgbox(radical_symbol_lise, "calculator")
        print("<"+radical_symbol_lise+">")

    # 绝对值
    def abs_abs():
        h_1 = easygui.enterbox("请输入将要被求出绝对值的数(仅限输入整数):", "calculator")
        h = abs(int(h_1))
        abs_lise = "|"+str(h_1)+"|"+" = "+str(h)
        easygui.msgbox(abs_lise, "calculator")
        print("<"+abs_lise+">")

    # 最大公因数
    def Greatest_common_divisor():
        i_1 = int(easygui.enterbox("请输入第一个数:", "calculator"))
        i_2 = int(easygui.enterbox("请输入第二个数:", "calculator"))
        i_1, i_2 = min(i_1, i_2), max(i_1, i_2)
        for i in range(i_2+1, 0, -1):
            if i_1 % i == 0 and i_2 % i == 0:
                i_lise = i
                break
        i_lise = str(i_1)+"和"+str(i_2)+"的最大公因数是:"+str(i_lise)
        easygui.msgbox(i_lise, "calculator")
        print("<"+i_lise+">")

    # 最小公倍数
    def Least_common_multiple():
        j_1 = int(easygui.enterbox("请输入第一个数:", "calculator"))
        j_2 = int(easygui.enterbox("请输入第二个数:", "calculator"))
        j_1, j_2 = min(j_1, j_2), max(j_1, j_2)
        for i in range(j_1, j_1*j_2+1):
            if i % j_1 == 0 and i % j_2 == 0:
                j_lise = i
                break
        j_lise = str(j_1)+"和"+str(j_2)+"的最小公倍数是:"+str(j_lise)
        easygui.msgbox(j_lise, "calculator")
        print("<"+j_lise+">")

    # 处理输入事件
    lise_1 = ['+', '-', '×', '÷', '√', 'abs', '最大公因数', '最小公倍数']
    b = easygui.buttonbox("请选择要计算什么?", "calculator", choices=lise_1)
    if b == '+':
        plus()
        print("")
    elif b == '-':
        less()
        print("")
    elif b == '×':
        times()
        print("")
    elif b == '÷':
        divide()
        print("")
    elif b == '√':
        radical_symbol()
        print("")
    elif b == 'abs':
        abs_abs()
        print("")
    elif b == '最大公因数':
        Greatest_common_divisor()
        print("")
    elif b == '最小公倍数':
        Least_common_multiple()
        print("")
    else:
        easygui.msgbox("Try again!please.", "calculator")


# 面积计算
def area():
    lise_2 = ["平方MM → 平方CM", "平方MM → 平方DM",
              "平方MM → 平方M", "平方CM → 平方DM", "平方CM → 平方M", "平方DM → 平方M"]
    c = easygui.buttonbox(
        "请选择要计算什么?,计算面积基本公式:面积 = 长×宽,用字母表示为:S=a×b", "calculator", choices=lise_2)
    if c == "平方MM → 平方CM":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_1)/100)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"平方MM="+num_2+"平方CM", "calculator")
        print("<"+num_1+"平方MM="+num_2+"平方CM"+">")
    elif c == "平方MM → 平方DM":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_1)/10000)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"平方MM="+num_2+"平方DM", "calculator")
        print("<"+num_1+"平方MM="+num_2+"平方DM"+">")
    elif c == "平方MM → 平方M":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_1)/1000000)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"平方MM="+num_2+"平方M", "calculator")
        print("<"+num_1+"平方MM="+num_2+"平方M"+">")
    elif c == "平方CM → 平方DM":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_1)/100)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"平方CM="+num_2+"平方DM", "calculator")
        print("<"+num_1+"平方CM="+num_2+"平方DM"+">")
    elif c == "平方CM → 平方M":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_1)/10000)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"平方CM="+num_2+"平方M", "calculator")
        print("<"+num_1+"平方CM="+num_2+"平方M"+">")
    elif c == "平方DM → 平方M":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_1)/100)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"平方DM="+num_2+"平方M", "calculator")
        print("<"+num_1+"平方DM="+num_2+"平方M"+">")
    else:
        easygui.msgbox("Try again!please.", "calculator")


# 体积计算
def volume():
    lise_3 = ["立方MM → 立方CM", "立方MM → 立方DM",
              "立方MM → 立方M", "立方CM → 立方DM", "立方CM → 立方M", "立方DM → 立方M"]
    c = easygui.buttonbox(
        "请选择要计算什么?,计算体积基本公式:体积 = 长×宽×高,用字母表示为:S=a×b×h", "calculator", choices=lise_3)
    if c == "立方MM → 立方CM":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_1)/1000)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"立方MM="+num_2+"立方CM", "calculator")
        print("<"+num_1+"立方MM="+num_2+"立方CM"+">")
    elif c == "立方MM → 立方DM":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_1)/1000000)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"立方MM="+num_2+"立方DM", "calculator")
        print("<"+num_1+"立方MM="+num_2+"立方DM"+">")
    elif c == "立方MM → 立方M":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_喵)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"立方MM="+num_2+"立方M", "calculator")
        print("<"+num_1+"立方MM="+num_2+"立方M"+">")
    elif c == "立方CM → 立方DM":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_1)/1000)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"立方CM="+num_2+"立方DM", "calculator")
        print("<"+num_1+"立方CM="+num_2+"立方DM"+">")
    elif c == "立方CM → 立方M":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_1)/1000000)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"立方CM="+num_2+"立方M", "calculator")
        print("<"+num_1+"立方CM="+num_2+"立方M"+">")
    elif c == "立方DM → 立方M":
        print("")
        num_1 = easygui.enterbox("请输入将要转换的数:", "calculator")
        num_2 = float(int(num_1)/1000)
        num_2 = str(num_2)
        easygui.msgbox(num_1+"立方DM="+num_2+"立方M", "calculator")
        print("<"+num_1+"立方DM="+num_2+"立方M"+">")
    else:
        easygui.msgbox("Try again!please.", "calculator")


#主程序

if a == '面积':
    print("")
    area()
elif a == '体积':
    print("")
    volume()
elif a == '普通计算':
    print("")
    normal_calculation()
else:
    easygui.msgbox("Try again!please.", "calculator")


#完!

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页