首页 / PYTHON / python四则运算升级
python四则运算升级
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python四则运算升级,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4004字,纯文字阅读大概需要6分钟。
内容图文
源代码已发布在码云https://gitee.com/liudanxi/codes/y65w40d1qxnvieukjt8rm12
对python四则运算进行功能界面的升级
升级简介
(1)加载“tkinter”库,设计窗口来实现功能
(2)首次按下按钮开始做题,生成题目。再次按下按钮,获取用户输出内容,与正确答案匹配,生成“题目+答案+用户答案+正确与否”字符串;当做到10的倍数时,弹窗提示做题数目和正确数目。
代码说明:
1 def button(): #按钮处理函数 2 #buttonNew.place_forget() #隐藏button 3 global Number 4 global RAns 5 global Rnum 6 if Number is 0: #开始步骤 7 EnterAns.delete('0','end') 8 listAns.insert(0, "开始答题~~") 9 buttonNew["text"] = "下一题" 10 R = Newq() # 获取新问题 11 Q1["text"] = R[1] # 问题 12 RAns=R[0] 13 Number+=1 14 else: #先判断上一题是否正确再生成新题目 每5道有一道为真分数的运算 15 User_A = EnterAns.get() 16 u=Q1["text"]+"="+str(RAns)+" your "+User_A+":" 17 if User_A == str(RAns): #匹配答案 18 u += " right" 19 Rnum+=1 20 else: 21 u += " wrong" 22 listAns.insert(0, u) 23 if Number%5!=0: 24 R = Newq() # 获取整数新问题 25 else: 26 R=newF() # 获取分数新问题 27 Q1["text"] = R[1] # 问题 28 RAns = R[0] #正确答案 29 Number += 1 30 EnterAns.delete('0', 'end') #清空输入框 31 if Number%30 == 0 : 32 sss='你做了'+str(Number)+'道题,对了'+str(Rnum)+'道' 33 tkinter.messagebox.showinfo("well done",sss)
1 #整数的加减乘除 2 def Newq(): 3 s=['+','-','×','÷'] 4 q=[] 5 s_num=random.randint(0, 3) 6 if s_num is 0 :#加法 7 a=random.randint(0,50) 8 b=random.randint(0,50) 9 q.append(a+b) 10 q.append(str(a)+' '+s[s_num]+' '+str(b)) 11 return q 12 elif s_num is 1 :#减法 13 a=random.randint(0,50) 14 b=random.randint(0,a) 15 q.append(a - b) 16 q.append(str(a) + ' '+s[s_num]+' ' + str(b)) 17 return q 18 elif s_num is 2 :#乘法 19 a=random.randint(0,20) 20 b=random.randint(0,20) 21 q.append(a * b) 22 q.append(str(a) + ' '+s[s_num]+' ' + str(b)) 23 return q 24 else : #除法 25 a=random.randint(0,20) 26 b=random.randint(1,20) 27 if (a>b and a%b!=0): #避免出现 20/3 这样的问题 28 tmp=a 29 a=b 30 b=tmp 31 c=Fraction(a,b) 32 q.append(str(c)) 33 q.append(str(a) + ' '+s[s_num]+' ' + str(b)) 34 return q
1 #分数的加减乘除 2 def newF(): 3 s=['+','-','×','÷'] 4 q=[] 5 s_num=random.randint(0, 3) 6 t1 = random.randint(0, 20) 7 if t1==0: 8 t2=random.randint(1, 20) 9 else: 10 t2 = random.randint(t1, 20) 11 a=Fraction(t1,t2) 12 t1 = random.randint(1, 20) 13 if t1==0: 14 t2=random.randint(1, 20) 15 else: 16 t2 = random.randint(t1, 20) 17 b = Fraction(t1, t2) 18 if s_num is 0 :#加法 19 q.append(a+b) 20 q.append(str(a)+' '+s[s_num]+' '+str(b)) 21 return q 22 elif s_num is 1 :#减法 23 if a<b: 24 tm=a 25 a=b 26 b=tm 27 q.append(a - b) 28 q.append(str(a) + ' '+s[s_num]+' ' + str(b)) 29 return q 30 elif s_num is 2 :#乘法 31 q.append(a * b) 32 q.append(str(a) + ' '+s[s_num]+' ' + str(b)) 33 return q 34 else : #除法 35 c=Fraction(a,b) 36 q.append(str(c)) 37 q.append(str(a) + ' '+s[s_num]+' ' + str(b)) 38 return q
测试运行
PSP表格:
预计耗时(分钟) | 实际耗时(分钟) | ||
Planning | 计划 | 5 | 3 |
Estimate | 估计这个任务需要多少时间 | 5 | 3 |
Development | 开发 | 76 | 130 |
Analysis | 需求分析 | 10 | 5 |
Design Spec | 生成设计文档 | 0 | 0 |
Design Review | 设计复审(和同事审核设计文档) | 5 | 0 |
Coding Standerd | 代码规范(为目前的开发制定合适的规范) | 5 | 15 |
Design | 具体设计 | 10 | 20 |
Coding | 具体编码 | 40 | 90 |
Code Review | 代码复审 | 5 | 10 |
Text | 测试(自测,修改代码,提交修改) | 20 | 5 |
Reporting | 报告 | 12 | 22 |
Text Report | 测试报告 | 8 | 15 |
Size Measurement | 计算工作量 | 5 | 2 |
Postmortem & Process Improvement Plan | 事后总结,并提出过程改进计划 | 10 | 5 |
Sum | 合计 | 216 | 325 |
内容总结
以上是互联网集市为您收集整理的python四则运算升级全部内容,希望文章能够帮你解决python四则运算升级所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。