+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2019-07(2)

2019-08(89)

2019-09(94)

2019-10(15)

2019-11(5)

跟书友汇德天背单词-用python写简单单词背诵小神器

发布于2020-05-17 17:45     阅读(953)     评论(0)     点赞(10)     收藏(3)


0

1

2

3

4

一说到学英语就头疼,你呢?

英语从小学开始就走进我们的生活中了,孩子们因为不具备英语学习的语言环境,所以学起来很费劲,别急今天我们一起来教会大家使用python来背英语,简单适应效果好!

本程序所用模块

  1. random
  2. csv

程序外部文件.csv

文件地址:“c:\Users\Administrator\pandas_csv\words.csv”

程序定义的函数

  1. def examination()
    作用:载入外部文件
    随机获取单词
    用户交互反馈
    参数传入另外函数append_word

  2. def append_word(参数1,参数2)
    作用:把错误的回答写入原文件内

程序关键词

核心解析:

  1. with open()载入文件,参数为:r只读 a为追加
  2. with open(…,‘r’)和csv.reader 利用读取载入文件命令,把文件内容传送给content
  3. with open(…,‘a’) 和csv.writer 利用加入写入文件命令把文件传递到可写空间writer
  4. for i in content 把文件里面的内容依次通过遍历取出加入到i结合append(tuple(i))加入元组到新的元组word_list中
  5. if len(word_list) < examination_quantity:通过判断看一下我们的外部文件总单词长度(数量)与设定变量值大小,小于设定值,把文件中的单词长度,传递给我们定义的变量examination_quantity
  6. for test,english_word,chinese_word in random.sample(word_list,examination_quantity),随机取出储存变量中的对应编号里面的对应汉字分给给到test,english ,chinese_word三个变量。

干 货代码:

#导入随机库
import random
#导入csv库
import csv

#定义载入单词文件函数
def load_word_file():
#建立一个单词空列表
	word_list = []
#open建立一个只读文件,命名为csvfile
	with open("c:\\Users\\Administrator\\pandas_csv\\words.csv","r",encoding="gbk") as csvfile:
#调用csv只读文件content
		content = csv.reader(csvfile)
#遍历文件内容,放到变量I
		for i in content:
#把变量i转为元组,用函数append添加到列表word_list
			word_list.append(tuple(i))
# 返回word_list并退出函数载入单词
	return word_list

#定义一个考试函数
def examination():
#函数载入实例化名为word_list
	word_list = load_word_file()
#定义变量examination_quantity值100
	examination_quantity = 100
#if word_list长度小于100
	if len(word_list) < examination_quantity:
#把word_list长度赋值给examination_quantity
		examination_quantity = len(word_list)
	"""利用for in random.samplt从总的单词列表中,总的数量里全部取出所有对英语和其汉语意思的词或词组,
		存入临时变量english_word和chinese_word中。
	"""
	for test,english_word, chinese_word in random.sample(word_list, examination_quantity):
		#输入一个回车空行
		print('\n')
		#输出提示信息行内容
		print(test)
		#随机输出汉语内容
		print(chinese_word)
		#互动输入信息,存入变量answer
		answer = input('对应答案是:   ')
		#把变量存入内容englishi_word小写后与答案answer比较
		if answer == english_word.lower():
			#相等,反馈信息
			print('恭喜你,答对了.')
		else:
			#错误把英语和汉语做为参数输入函数append_word
			append_word(english_word, chinese_word)
			#输出反馈和正确答案
			print('错了,正确答案是', english_word)
#定义append_word函数,参数为english_word,chinese_word
def append_word(english_word, chinese_word):
	#文件words为追加状态,不留空行,文件操作名csvfile
	with open('words.csv', 'a', newline = '') as csvfile:
		#利用csv的写函数把文件内容绑定到变量writer
		writer = csv.writer(csvfile)
		#在变量writer中使用writerow命令,把错误的信息写到文件内
		writer.writerow([english_word, chinese_word])
#执行主文件程序,调用函数examination
if __name__ == '__main__':
	examination()

希望这段程序能对你的学习有帮助,希望大家在学习英语的路上一帆风顺哦!
书友汇:德天老师

0

1

2

3

4



所属网站分类: 技术文章 > 博客

作者:天青色等烟雨

链接: https://www.pythonheidong.com/blog/article/377264/9f19de8d21ccf988a7db/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

10 0
收藏该文
已收藏

评论内容:(最多支持255个字符)