猫史档案馆


【Python作品分享】判断完全数【作品秀】

用户:L0_0L0_0查看:0 回复:0 评论:0 创建时间:2021-04-17T16:39:07


【作品展示】

center_image

 

【作品介绍】

tkinter程序

 

【作品源代码】

from tkinter import *
from tkinter.messagebox import *

root = Tk(className='完全数判断')
root.resizable(0, 0)

cord = ''

label = Label(root, width=39, height=4, bg='white', anchor='w')
label.grid(row=0, columnspan=3)

def Input(number):
    label['text'] += number

for i in range(1, 11):
    Button(root, width=12, height=4, command=lambda number=str(i)[-1]: Input(number), text=str(i)[-1]).grid(column=(i-1)%3, row=(i-1)//3+1)

def delete():
    label['text'] = label['text'][0:len(label['text'])-1]

Button(root, width=12, height=4, command=delete, text='→').grid(column=1, row=4)

def enter():
    global cord
    try:
        number = int(label['text'])
        factor = []
        for i in range(number):
            if number % (i + 1) == 0:
                factor.append(i + 1)
        if sum(factor[0:-1]) == number and number != 0:
            showinfo('判断完全数', '是完全数。')
            cord += (str(number) + '是完全数\n')
        else:
            showerror('判断完全数', '不是完全数。')
            cord += (str(number) + '不是完全数\n')
    except:
        showerror('判断完全数', '请输入数字。')            

Button(root, width=12, height=4, command=enter, text=u'\u21b2').grid(column=2, row=4)

def show_cord():
    showinfo('查看记录', cord)

def reset():
    global cord
    if askyesno('清除记录', '此操作将清除你的记录,是否继续?'):
        cord = ''

menubar = Menu(root)
menubar.add_command(label='查看记录', command=show_cord)
menubar.add_command(label='清除记录', command=reset)
menubar.add_separator()
menubar.add_command(label='退出程序', command=root.quit)
root.config(menu=menubar)
root.mainloop()

 

【提示】

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

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页