40行python代碼編寫的計算器

jopen 9年前發布 | 1K 次閱讀 Python

    from tkinter import *
reset=True
def buttonCallBack(event):
global label
global reset
num=event.widget['text']
if num=='C':
label['text']="0"
return
if num in "=":
label['text']=str(eval(label['text']))
reset=True
return
s=label['text']
if s=='0' or reset==True:
s=""
reset=False
label['text']=s+num

#主窗口  
root=Tk()  
root.wm_title("計算器")  
#顯示欄1  
label=Label(root,text="0",background="white",anchor="e")  
label['width']=35  
label['height']=2  
label.grid(row=1,columnspan=4,sticky=W)  
#按鈕  
showText="789/456*123-0.C+"  
for i in range(4):  
    for j in range(4):  
        b=Button(root,text=showText[i*4+j],width=7)  
        b.grid(row=i+2,column=j)  
        b.bind("<Button-1>",buttonCallBack)  
showText="()"  
for i in range(2):  
    b=Button(root,text=showText[i],width=7)  
    b.grid(row=6,column=2+i)  
    b.bind("<Button-1>",buttonCallBack)  
b=Button(root,text="=")  
b.grid(row=6,columnspan=2,sticky="we")  
b.bind("<Button-1>",buttonCallBack)  
root.mainloop()  </pre> 




來自:http://blog.csdn.net/ccy0815ccy/article/details/42426373

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!