python自测单词软件_还在用背单词App?使用Python开发英语单词自测工具,助你逆袭单词王!...
崩溃-ing
西安已经下了两周雨了,大家以为到头了么?不仅仅才是开始,未来的一个月还要接着下,简直崩溃啊!
昨天被逼着去加班,所以早期发了一篇娱乐帖,还好没有掉粉…要谢谢各位的包容啊,哈哈。
学英语广告
最近也许是刚开学的原因,不管是公众号,还是刷抖音,导出都能看到关于学英语、背单词的广告。
不知道现在学生们背单词买的什么辅导材料。反正我们上学那会,《星火阅读》特别的火。记得当时随书还送一个红色的塑料膜。书中英语单词是红色的其他文字是黑色的。背单词的时候先把塑料膜盖在书上,然后就只能看到翻译和音标,从而起到自测英语的作用。一页看完了取下塑料膜,再核对哪些单词记错了。就这么一个无脑的功能,当时的我们都觉得好犀利,谁没一本这样的背单词书,都不好意思出去装13啊!
今天,我们就使用Python来做一个英语单词自测工具!
需求分析
既然上面说了那么多的怀旧梗,那今天就仿照着从前的方式,做一个稍微高端一些的单词自测工具。
先来看看实现效果吧…程序输入你想测试的单词数量,然后系统自动生成html测试题,之后你就可以通过速记与查看来检测哪些单词你没记住喽…
找单词
背单词我们得先有单词吧?从百度找了一篇2019cet4英语单词表!
左图下载的word文档的内容包含各种广告,为了方便,我直接把它全部拷贝存在文本文档中,类似右图。
观察保存的文本内容,我们可以通过 斜杠’/‘
生成测试题
我们准备好了试题,怎么生成测试题呢?之前学习excel读写的时候,写过一篇英语单词自测的文章:
先生成单词音标,然后用户输入翻译,最后再D列追加正确的翻译…
最近没怎么学习web端的知识,所以今天我们来写一套自动生成html测试题的练习吧!
准备基础html文档root.html:
清风Python英语自测工具
清风Python英语单词自测工具
序号翻译音标单词翻牌
{content}
var word = $("." + $(this).attr('line'));
if (word.is(':visible')) {
word.slideUp();
} else {
word.slideDown();
}
});
其中content的内容,为我们等下自动生成试题…
其中引入的bootstrap、jQuery,都放在代码同级的basic.html文件夹中…
Python代码编写
Python的代码实现起来也比较简单,读取用户测试数量,然后random获取随机测试内容,拆分数据后进行html内容组装,最终生成自测html练习题:# -*- coding: utf-8 -*-
# @Author : 王翔
# @WeChat : King_Uranus
# @公众号 : 清风Python
# @Date : 2019/9/16 01:14
# @Software : PyCharm
# @version :Python 3.7.3
# @File : EnglishWordsTest.py
import os
import random
import re
class EnglishWordsTest:
def __init__(self):
self.root_path = os.path.dirname(os.path.realpath(__file__))
with open(os.path.join(self.root_path, 'basic', 'cet4.txt'), encoding='utf-8') as f:
_all_words = f.readlines()
self.html = ""
self.clean_data(random.sample(_all_words, text_num))
def clean_data(self, data):
exam_data = list(map(lambda x: re.sub("\s", '', x).split('/'), data))
for num, line in enumerate(exam_data, start=1):
self.html += """
{0}{3}{2}
查看
""".format(num, *line)
with open(os.path.join(self.root_path, 'basic', 'root.html'), encoding='utf-8') as f:
data = f.read()
with open(os.path.join(self.root_path, 'exam.html'), 'w+', encoding='utf-8') as f:
f.write(data.replace('{content}', self.html))
if __name__ == '__main__':
print("请输入所需测试的单词数量(范围:1-100):")
while True:
try:
text_num = int(input())
if 1 < text_num < 100:
break
except ValueError:
pass
print("请仔细阅读输入范围!")
EnglishWordsTest()
关于文件
cet4的单词、涉及到的css、js基础模板,就不在文章中赘述了…
如果大家喜欢这个Python的英语测试题联系,公众号后台回复学英语即可获取整套代码及文件。
The End
本文来自“清风Python”公众号
python自测单词软件_还在用背单词App?使用Python开发英语单词自测工具,助你逆袭单词王!...相关推荐
- python单词软件哪个好_还在用背单词App?使用Python开发英语单词自测工具,助你逆袭单词王!...
学英语广告 最近也许是刚开学的原因,不管是公众号,还是刷抖音,导出都能看到关于学英语.背单词的广告. 不知道现在学生们背单词买的什么辅导材料.反正我们上学那会,<星火阅读>特别的火.记得当 ...
- 还在用背单词App?使用Python开发英语单词自测工具,助你逆袭单词王!
学英语广告 最近也许是刚开学的原因,不管是公众号,还是刷抖音,导出都能看到关于学英语.背单词的广告. 不知道现在学生们背单词买的什么辅导材料.反正我们上学那会,<星火阅读>特别的火.记得当 ...
- 电脑测速软件_不服跑个分!常见固态硬盘测速工具性价比盘点(上)
尽管不像CPU的核心或线程数量那样直观,固态硬盘性能在近几年电脑硬件中确实增长迅速.不同类型的测速软件也是五花八门,不服跑个分之后,我们能从分数中得到什么?又会因为这次跑分对硬盘产生多少写入量? 笔者 ...
- python积木编程软件_积木编程下载-积木编程app下载v1.0.0-西西软件下载
积木编程是一款专业的编程学习软件,平台为用户提供多种编程模板使用,还收纳了丰富的编程知识方便用户随时在线学习,更快掌握编程相关技能和知识,专业题库.优质课程.模拟实战都能帮助用户快速提升编程水平. 积 ...
- python实现数据可视化软件_基于Python实现交互式数据可视化的工具
作者:Alark Joshi 翻译:陈雨琳 校对:吴金笛 本文2200字,建议阅读8分钟. 本文将介绍实现数据可视化的软件包. 这学期(2018学年春季学期)我教授了一门关于数据可视化的数据科学硕士课 ...
- python写抢火车票软件_用 Python 代码自动抢火车票
市场上很多火车票抢票软件大家应该非常熟悉,但很少有人研究具体是怎么实现的,所以觉得很神秘,其实很简单.下面使用Python模拟抢票程序,给大家揭秘抢票到底是怎么回事. 该代码仅供参考,主要用于大家沟通 ...
- python图片识别验证码软件_基于python图片识别工具(图片识别,车牌,PDF,验证码)...
先上图 不多说. 对于一般的用户来说识别率还是能达到百分之90以上. 已经打包成exe文件.windows用户可以直接使用.要软件的加我QQ python代码: # -*- coding: UTF- ...
- 电脑测速软件_网速慢,怎么办,教你测速,教你解决方案
网速慢.网页慢.视频卡.游戏卡,如何判断自己的宽带速率是否有问题,本期我们来讨论下,如何正确测试网速,信道干扰.2.4G与5G信号.IPTV测速. 一.电脑测速 受到无线环境影响,无线性能瓶颈等多方面 ...
- python如何并发运行2个软件_如何利用并发性加速你的python程序(二):I/O 绑定程序加速...
原标题:如何利用并发性加速你的python程序(二):I/O 绑定程序加速 雷锋网 AI 科技评论按,本文是工程师 Jim Anderson 分享的关于「通过并发性加快 python 程序的速度」的文 ...
- python是语言还是软件_程序开发语言之Python:是追逐还是坚守?
Python作为计算机程序设计语言的其中一种,最初是被设计用于编写自动化脚本(shell),随着版本的不断更新.语言新功能的添加和机器学习的兴起,Python从2017年开始受到广泛关注. Pytho ...
最新文章
- 为什么加上log4j2.version配置就可以更新log4j2的版本?
- 黑苹果关机重启后蓝牙连接不上_手机要关机吗,要贴膜吗,要套壳吗?看完这条,都有答案了_政务_澎湃新闻...
- [cocos2d-x][apk打包][Fatal signal 11][andriod]Eclipse编译Fatal signal 11报错-都是字符赋值惹的祸...
- 学习笔记(36):Python网络编程并发编程-IO模型介绍
- JAVA——附加作业2——情人节送花
- Wireshark工作笔记-TCP的状态解析,以及建立连接与关闭连接
- mycat1.4.1小白用户入门(一)
- Json for the .NET Compact Framework
- eclipse 连 mysql 数据库 jdbc下载
- 通过VBA将excel数据导入至word文档
- android 基站信息说明,安卓android手机查看基站信息
- 链家数据爬取+地图找房
- android中menu重写哪些方法,在Android中Menu的使用
- 韦福怎么编译c 语言,c语言第1章 绪论.ppt
- Python环境安装 官网下载 / 迅雷下载
- 【Notepad++】Notepad++格式化JSON数据
- Idea scalac: Scala compiler JARs not found (module ‘XXXX‘): C:\Users\nanhu\.cache\co......
- java crm 进销存 websocket即时聊天发图片文字 好友群组 SSM源码
- MySQL数据库相关资料
- 求主对角线上各元素之和(C语言)
热门文章
- 安装VS2008的时候Windows Mobile 5.0 SDK R2 for pocket pc错误解决方案
- SQL Server 索引中的碎片和填充因子
- html在搜索按钮中加放大镜,CSS3 搜索按钮动效 - 放大镜图标变叉叉
- 【提供代码获取方式】matlab使用风羽法画大气环流
- 经典成就辉煌:从3Dmark看GPU发展之路
- 差距几何 Vista与XP系统性能对比测试(下)
- 计算机视觉可解释性——卷积神经网络中间层的可视化
- linux支持的阵列硬盘柜,在Linux上玩好
硬盘
阵列
- Greedy Analysis Strategies
- 文氏桥振荡电路多类分析 LM386 DZ006套件