课件编号13903565

小学课后服务 Python少儿编程 基础篇:16-自创出题器 课件 (16张PPT)

日期:2024-06-05 科目:综合实践 类型:小学课件 查看:34次 大小:400968Byte 来源:二一课件通
预览图 1/7
小学,自创,PPT,16张,课件,出题
  • cover
(课件网) Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. 少儿编程课 自创出题器 小测验 出一份试卷,题目全部为单项选择题:每道选择题共四个选项,答对一题得20分,答错一题不得分;答题结束后,打印分数。 打印试题 利用海龟先生的write函数将题目“写”在屏幕上 移动画笔到屏幕的左上角,准备“写”题目 写题干 将选项构建成列表 移动画笔,准备“写”选项 每个选项由英文字母和选项内容组成,字母和选项内容之间有一个空格 每“写”一个选项都要将画笔下移一段距离 打印试题 import turtle t=turtle.Turtle() t.up() t.goto(-160,100) #挪笔 t.write('我们学习的是什么语言?',font=('楷体',16)) #打印题干 ops=['python','java','scratch','c++’] #选项 m='ABCD' for x in range(4): t.goto(-160,60-40*x) #调整每次打印选项的位置 t.write(m[x]+' '+ops[x],font=('楷体',16)) 输入并判断答案 利用input函数获得输入,比较用户的输入和正确答案 如果回答正确增加得分,如果不正确则不得分 将本道题的回答结果和目前得分告知用户 输入并判断答案 s=0 #记录得分 a=input('答案: ') #输入答案 if a=='a' or a=='A': #若输入a或者A s+=20 #回答正确,加20分 print('回答正确,目前得分:',s) else: print('回答错误,目前得分:',s) 如何改变每次的选项顺序 如果每次“写”题目时,选项顺序都是一模一样的会大大降低题目的复杂性和趣味性,如何让每次选项顺序都不相同呢? 很简单,只要每次“写”选项前都使用random.shuffle对选项做一次乱序即可 判断答案 选项顺序改变了,也就意味着不能以ABCD作为答案正确与否的依据了。因为每一次ABCD对应的选项内容都是不断变化的。该怎么办? 判断答案 要记录正确答案的内容而非标号 根据用户输入的标号,找到标号在ABCD中的位置 根据这个位置,到乱序后的选项列表中找到对应的内容 比较1和3,如果内容一致则答对,如果不一致则错误 判断答案 判断答案 判断答案 如何改变每次的选项顺序 from random import shuffle ops=['python','java','scratch','c++']#选项 shuffle(ops) m='ABCD' for x in range(4): t.goto(-160,60-40*x) #调整每次打印选项的位置 t.write(m[x]+' '+ops[x],font=('楷体',16)) 记录正确答案(而非标号) from random import shuffle ops=['python','java','scratch','c++']#选项 shuffle(ops) answer='python' #记录题目的正确答案 m='ABCD' #选项 for x in range(4): t.goto(-160,60-40*x) #调整每次打印选项的位置 t.write(m[x]+' '+ops[x],font=('楷体',16)) 找到输入的答案位置 upper():将所有的英文字符转为大写 find():查找相应的位置 s=0 #记录得分 a=input('答案: ') #输入的答案 n=m.find(a.upper()) #找到用户输入的答案在m中的位置 找到答案并比对 if ops[n]==answer: #如果ops中对应位置的内容与answer一样 s+=20 #回答正确,加20分 print('回答正确,目前得分:',s) else: print('回答错误,目前得分:',s) ... ...

~~ 您好,已阅读到文档的结尾了 ~~