20212313 实验二《Python程序设计》实验报告

20212313吴剑标 2021-2022-2 《Python程序设计》实验二报告

课程:《Python程序设计》
班级:2123
姓名:吴剑标
学号:20212313
实验教师:王志强
实验日期:2022年4月5日
必修/选修: 公选课

一、实验内容

1.设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。

2.考核基本语法、判定语句、循环语句、逻辑运算等知识点
在tkinter下实现计算器的代码
import distutils.sysconfig
import  tkinter
from tkinter import *
import tkinter as tk
import string
cal=tkinter.Tk()
cal.title('简易计算器')
cal.geometry("500x500")
tkinter.Label(cal,text='请开始你的计算',width='15',height='5',font='Arial,3').grid(row=1,column=1)
var1 = StringVar()
t1 = tkinter.Text(cal,width=20,height=2,)
t1.grid(row=2,column=1)
def _1_():
    t1.insert("end", "1")
def _2_():
    t1.insert("end", '2')
def _3_():
    t1.insert("end", "3")
def _4_():
    t1.insert("end", "4")
def _5_():
    t1.insert("end", "5")
def _6_():
    t1.insert("end", "6")
def _7_():
    t1.insert("end", "7")
def _8_():
    t1.insert("end", "8")
def _9_():
    t1.insert("end", "9")
def _0_():
    t1.insert("end", "0")
def add():
    t1.insert("end", "+")
def lose():
    t1.insert("end", "-")
def mult():
    t1.insert("end", "*")
def divison():
    t1.insert("end", "/")
def guiling():
    contents = t1.delete(1.0,"end")
def dengyu():
    a=t1.get("1.0","end")  #获取内容
    answer=eval(a)
    print(a)
    print(answer)
    t1.insert("end",f'={answer}')
    return answer
Button(cal, text=1, command=_1_,width=5,height=2).grid(row=3,column=2 ,padx=0, pady=0)
Button(cal, text=2, command=_2_,width=5,height=2).grid(row=3, column=3, padx=0, pady=0)
Button(cal, text=3, command=_3_,width=5,height=2).grid(row=3,column=4, padx=0, pady=0)
Button(cal, text=4, command=_4_,width=5,height=2).grid(row=3, column=5, padx=0, pady=0)
Button(cal, text=5, command=_5_,width=5,height=2).grid(row=4,column=2, padx=0, pady=0)
Button(cal, text=6, command=_6_,width=5,height=2).grid(row=4, column=3)
Button(cal, text=7, command=_7_,width=5,height=2).grid(row=4,column=4)
Button(cal, text=8, command=_8_,width=5,height=2).grid(row=4, column=5)
Button(cal, text=9, command=_9_,width=5,height=2).grid(row=5,column=2)
Button(cal, text=0, command=_0_,width=5,height=2).grid(row=5, column=3)
Button(cal, text="x", command=mult,width=5,height=2).grid(row=6, column=2)
Button(cal, text="/", command=divison,width=5,height=2).grid(row=6,column=3)
Button(cal, text="+", command=add,width=5,height=2).grid(row=5, column=4)
Button(cal, text="_", command=lose,width=5,height=2).grid(row=5, column=5)
Button(cal, text="=", command=dengyu,width=5,height=2).grid(row=6, column=5)
Button(cal, text="归零", command=guiling,width=5,height=2).grid(row=6, column=4)
cal.mainloop()
3.实验结果经过反复证明得出代码正确

二、实验困难及感悟

本次的实验最大困难就是学习tkinter了,这个在学习tkinter时我先大致学习了label、text、entry、frame等等。其中最难的就是把计算器的各个按钮排版整齐。我去csdn上查找了一下,其他人的方法比我快速简单很多。但因为我还只是简单的Python入门,还无法完全看懂。只能继续加油,继续勉励自己,好好提升。

posted @ 2022-04-05 21:08  wuwuwuwujian  阅读(49)  评论(0编辑  收藏  举报