当前位置: 首页 > news >正文

python随机生成运算符_我怎样才能随机选择一个数学运算符并用它来问重复出现的数学问题?...

不如做一个字典,把运算符的字符(如“+”)映射到运算符(如operator.add)。然后采样,格式化字符串,并执行该操作。import random

import operator

生成随机数学表达式def randomCalc():

ops = {'+':operator.add,

'-':operator.sub,

'*':operator.mul,

'/':operator.truediv}

num1 = random.randint(0,12)

num2 = random.randint(1,10) # I don't sample 0's to protect against divide-by-zero

op = random.choice(list(ops.keys()))

answer = ops.get(op)(num1,num2)

print('What is {} {} {}?\n'.format(num1, op, num2))

return answer

询问用户def askQuestion():

answer = randomCalc()

guess = float(input())

return guess == answer

最后做一个多问题测验def quiz():

print('Welcome. This is a 10 question math quiz\n')

score = 0

for i in range(10):

correct = askQuestion()

if correct:

score += 1

print('Correct!\n')

else:

print('Incorrect!\n')

return 'Your score was {}/10'.format(score)

一些测试>>> quiz()

Welcome. This is a 10 question math quiz

What is 8 - 6?

2

Correct!

What is 10 + 6?

16

Correct!

What is 12 - 1?

11

Correct!

What is 9 + 4?

13

Correct!

What is 0 - 8?

-8

Correct!

What is 1 * 1?

5

Incorrect!

What is 5 * 8?

40

Correct!

What is 11 / 1?

11

Correct!

What is 1 / 4?

0.25

Correct!

What is 1 * 1?

1

Correct!

'Your score was 9/10'

相关文章:

  • IIS7中注册wcf
  • 平均聚类系数_模糊数学笔记:五、模糊聚类
  • 看到苹果的把视频转接线当金条卖,我彻底怒了。。。。。。。
  • python特效源代码_Python基于pygame实现的弹力球效果(附源码)
  • 在Google Doc不可用的时候,见识了Google的18国语言道歉, 力压苹果5国
  • 软件验收标准和验收方法_软件测试干货:项目验收测试和产品验收测试的区别...
  • python 3d人脸重建_一张图实现3D人脸建模!中科院博士ECCV的新研究
  • 3G互联下的“位置”之争!
  • 如何在python中安装包_如何给python安装包
  • 线性回归数据_R数据科学——线性回归七
  • t450加固态硬盘教程_Thinkpad t450s拆机换240G ssd+加8G内存
  • python 函数式 panda_带有动态参数的Python Pandas groupby函数,每月...
  • ora-00955: 名称已由现有对象使用_XSKY S3 Console 为对象存储系统赋能
  • 互联网迟到的80后
  • 儿子,对不起
  • ES6指北【2】—— 箭头函数
  • 实现windows 窗体的自己画,网上摘抄的,学习了
  • [ JavaScript ] 数据结构与算法 —— 链表
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 0x05 Python数据分析,Anaconda八斩刀
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  • emacs初体验
  • Java读取Properties文件的六种方法
  • laravel 用artisan创建自己的模板
  • leetcode388. Longest Absolute File Path
  • Spark in action on Kubernetes - Playground搭建与架构浅析
  • Webpack 4x 之路 ( 四 )
  • 闭包,sync使用细节
  • 仿天猫超市收藏抛物线动画工具库
  • 看域名解析域名安全对SEO的影响
  • 理解在java “”i=i++;”所发生的事情
  • 聊聊redis的数据结构的应用
  • 让你的分享飞起来——极光推出社会化分享组件
  • 设计模式(12)迭代器模式(讲解+应用)
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 译有关态射的一切
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • Play Store发现SimBad恶意软件,1.5亿Android用户成受害者 ...
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • ​ 轻量应用服务器:亚马逊云科技打造全球领先的云计算解决方案
  • #我与Java虚拟机的故事#连载04:一本让自己没面子的书
  • (附源码)spring boot公选课在线选课系统 毕业设计 142011
  • (附源码)spring boot球鞋文化交流论坛 毕业设计 141436
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • *setTimeout实现text输入在用户停顿时才调用事件!*
  • .NET CLR Hosting 简介
  • .net core 6 集成和使用 mongodb
  • .NET IoC 容器(三)Autofac
  • .NET Standard、.NET Framework 、.NET Core三者的关系与区别?
  • .net 程序发生了一个不可捕获的异常
  • .Net 基于MiniExcel的导入功能接口示例
  • .net 中viewstate的原理和使用
  • .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly)