想知道孩子学习成果?我把儿子生词做了个表,随时抽查让他随机背单词!

478 阅读3分钟

是这样的,儿子刚开始学英语,想知道他的学习成果和进度怎么样?感觉直接拿书本抽查,比较枯燥。所以我突发奇想,用Python写了一个简单的猜单词小游戏。哈哈,我可能是个魔鬼~

35.jpg

思路是这样的:

1、 一个words列表里存放若干的单词,例如:

QQ截图20210604161530.png

2、 在words列表里随机取出一个单词放进word列表,例如:

QQ截图20210604161552.png

3、用一个tips列表存放提示信息,长度跟随机取出来的单词长度相同,而且初始化如下图:

QQ截图20210604161620.png

4、一个列表放随机数,长度跟随机取出来的单词长度相同的,且不重复。

QQ截图20210604161630.png

5、当用随机数列表里的前两个元素,用word列表里的元素替换提示信息列表的元素:

QQ截图20210604161838.png

6、剩下就是游戏逻辑了,需要提示的时候,遍历下一个随机数列表,然后替换信息


我们可以先来看一下,程序运行会出现的结果:

1.猜对:

QQ截图20210604164751.png

2.猜错:

QQ截图20210604164829.png


现在看一下代码:

import random
#初始化信息↓↓↓↓↓↓↓
# 存放单词的列表
words = ["hello", "morning", "apple", "orange", "pink", "success","finish","breakfast","thank"]
#随机获取单词列表里的一个单词
word = list(words[random.randint(0, len(words) - 1)])
#随机数列表,存放着与单词长度一致的随机数(不重复)
ranList = random.sample(range(0, len(word)), len(word))
#存放提示信息
tips = list()
#初始化提示信息
#存放跟单词长度一致的下划线
for i in range(len(word)):
	tips.append("_")
#随机提示两个字母
tips[ranList[0]] = word[ranList[0]]
tips[ranList[1]] = word[ranList[1]]

#函数部分↓↓↓↓↓
#展示菜单
def showMenu():
	print("需要提示请输入'help?'")
	print("结束游戏请输入'quit!'")
#显示提示信息
def showtips():
	for i in tips:
		print(i, end=" ")
	print()
#需要提示
def needTips(tipsSize):
	#至少有两个未知字母
	if tipsSize <= len(word)-3:
		tips[ranList[tipsSize]] = word[ranList[tipsSize]]
		tipsSize += 1
		return tipsSize
	else:
		print("已没有提示!")

#主要运行函数↓↓↓↓↓↓
def init():
	print("------猜单词小游戏-------")
	tipsSize = 2
	showMenu()
	while True:
		print("提示:",end="")
		showtips()
		guessWord = input("猜一下这个单词:")
		#  <''.join(word)>把word列表的内容转换成字符串
		if guessWord == ''.join(word):
			print("恭喜你,猜对了!就是%s!"%(''.join(word)))
			break
		elif guessWord == 'help?':
			tipsSize = needTips(tipsSize)
		elif guessWord == 'quit!':
			break
		else:
			print("猜错了!")
			continue
init()

看到这里,是不是再也不用担心孩子学习不认真了,一个猜词游戏随时随地抽查单词。对付孩子,几行代码就搞定!

我跟儿子说,你看边玩游戏还可以边学习,你开不开心?

儿子勉强回答说:我开心。(其实并没有)

开不开心不重要,学习最重要!儿子现在去房间好好学习去了,心里可能在想:有个当程序员的妈太恐怖了,动不动就给写一个学习小游戏。面对我的操作,孩子流下了幸福的泪水~~~(我可能不是亲生的,哈哈!)

39-1.jpg

hb1.jpg

感谢每一位愿意读完我文章的人,对于新媒体创作我也是一个刚入门的,也在不断学习中。 创作是一件非常值得持续投入的事情,因为你们每一次的支持都是对我极大的肯定! 再次感谢大家的支持,在此我整理了一些适合大多数人学习的资料,免费给大家下载领取! 主要干货如下:

Python标准库资料(最全中文版) 多个项目及源码(四五十个有趣且经典的练手项目及源码) 2000多本Python电子书(主流的经典的都包含在内) Python学习路线图(更系统、更高效的学习) Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习) 有需要的读者可以直接拿走,在我的QQ学习交流群(想要找到志同道合的伙伴也可以进群,记住哦仅限学习交流!!!),裙号是:298154825。

末尾.jpg