用户:
Liu_Hai查看:0 回复:0 评论:0 创建时间:2023-04-06T13:06:15
【作品展示】

【作品介绍】
可以登陆或注册可以计算体积,面积和各种普通计算
【作品源代码】
#导入基础库:
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