用python的tkinter模块编写求BMI小程序

用python的tkinter模块编写求BMI小程序,第1张

自学一段时间后,想做个小项目练练手,就用python写了个小程序,求健康指数(没什么难度,但可以练练手)。


其中涉及到tkinter的Lable,Button,Image的应用及python的基本语法和获取异常处理,源码在下。


import tkinter
import tkinter.messagebox
from PIL import Image,ImageTk

win = tkinter.Tk()
win.title("BMI计算")
win.geometry("600x600")
Frame_one = tkinter.Frame(win)  # 先创建一个容器放上面存放登录
Frame_one.pack(side='top')

Frame_two = tkinter.Frame(win)  # 再创建一个容器放中间存放密码
Frame_two.pack()

Frame_three = tkinter.Frame(win)  # 再创建一个容器在下面存放按钮
Frame_three.pack(side='bottom')

Label_one = tkinter.Label(Frame_one, text='身高(CM):')
Label_two = tkinter.Label(Frame_two, text='体重(KG):')
Entry_one = tkinter.Entry(Frame_one, bd=5)
Entry_two = tkinter.Entry(Frame_two, bd=5, )

def test():
    a = Entry_one.get()
    b = Entry_two.get()
    if a<=0:
        print("输入异常")


def event1():
    try:
        if Entry_one.get().isdecimal():
            pass
        else:
            raise Exception("请输入正确的数值")
        high = float(Entry_one.get()) / 100
        weight = float(Entry_two.get())
        if high<=0 or weight<=0 :
            raise Exception("输入的值不能为负数")
        bmi = weight / (high * high)
        bmi = ('%.4f' % bmi)
        result = tkinter.messagebox.showinfo(title='BMI', message="您的BMI为:" + bmi)
    except Exception as d:
        result = tkinter.messagebox.showinfo(title='错误!', message="请输入正确的数值!")
    finally:
        Entry_one.delete(0, 'end')
        Entry_two.delete(0, 'end')


Button_one = tkinter.Button(Frame_three, text='查询', width='10', command=event1)


def event2():
    Entry_one.delete(0, 'end')
    Entry_two.delete(0, 'end')


Button_two = tkinter.Button(Frame_three, text='取消', width='10', command=event2)
Button_one.pack(side='left')
Button_two.pack(side='right')
Label_one.pack(side='left')
Entry_one.pack(side='right')
Label_two.pack(side='left')
Entry_two.pack(side='right')
Frame_four=tkinter.Frame(win)
Lable_one=tkinter.Label(Frame_four,text="身体质量指数,是BMI指数,简称体质指数,\
是国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。


\ 计算公式为:BMI=体重÷身高2。


(体重单位:千克;身高单位:米。


\ BMI由19世纪中期的比利时通才凯特勒最先提出。


",anchor=tkinter.NW, wraplength=280) Lable_one.pack() img_open = Image.open('E:\桌面文档\qqq.jpg') img_png = ImageTk.PhotoImage(img_open) label_img = tkinter.Label(Frame_four, image = img_png) label_img.pack() Frame_four.pack() win.mainloop()

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/589731.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-13
下一篇 2022-04-13

发表评论

登录后才能评论

评论列表(0条)

保存