python英语单词测试小程序代码实例


Posted in Python onSeptember 09, 2019

这篇文章主要介绍了python英语单词测试小程序代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

爬取了扇贝英语网,并制作了一个英语单词测试的小程序,还能生成错词本,一起来看下代码吧~

import requests

#扇贝网爬虫,获取英语单词
category_res=requests.get('https://www.shanbay.com/api/v1/vocabtest/category/?_=1566889802182')
category_json=category_res.json()
category_data=category_json['data']

#选择出题范围
for i in range(10):
  print(str(i+1)+'.'+category_data[i][1])
number=int(input('请选择出题范围:'))

url='https://www.shanbay.com/api/v1/vocabtest/vocabularies/'
headers={
  'Referer': 'https://www.shanbay.com/vocabtest/',
  'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.1 Safari/605.1.15'
  }
params={
  'category':category_data[number-1][0],
  '_': '1566889452889'
  }

res=requests.get(url,headers=headers,params=params)
jsonres=res.json()

vacabularies=jsonres['data']
knows=[]
unknows=[]
print()
print('以下单词你是否认识?')
n=0
z=0

b=open('错词本.txt','a+')
b.write('你不认识的单词有:\n')

#测试开始,挑选认识的单词
for vacabulary in vacabularies:
  n=n+1
  vacabu=vacabulary['content']
  print('第'+str(n)+'个:'+vacabu)
  index=vacabularies.index(vacabulary)

  while True:
    judge=input('认识选Y,不认识选N:')
    if judge=='Y':
      knows.append(index)
      break
    elif judge=='N':
      unknows.append(index)
      z=z+1
      b.write(str(z)+'.'+vacabu+'\n')
      break
    else:
      print('请输入Y或者N')
print()      
print('测试结束,以下是测试结果:')
print('认识'+str(len(knows))+'个单词,不认识'+str(len(unknows))+'个单词。')
print('你可真棒!')
print()

right=[]
wrong=[]

#选择正确的词义
b.write('你记错的单词有:\n')
m=0
for know in knows:
  vacabulary_know=vacabularies[know]
  word=vacabulary_know['content']
  print()
  print(word)

  definitions=vacabulary_know['definition_choices']

  for i in range(4):
    print(str(i+1)+'.'+definitions[i]['definition'])
  choice=int(input('单词测试,请选择正确的词义:'))
  rank=definitions[choice-1]['rank']
  if rank==vacabulary_know['rank']:
    right.append(word)
  else:
    wrong.append(word)
    m=m+1
    b.write(str(m)+'.'+word+'\n')
print()
print('测试结果出来啦!')
print('认识的单词里掌握了这几个:')
print(right)
print()
print('没掌握的是这几个:')
print(wrong)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python多线程学习资料
Dec 19 Python
Python中的类学习笔记
Sep 23 Python
python通过装饰器检查函数参数数据类型的方法
Mar 13 Python
Python中使用pprint函数进行格式化输出的教程
Apr 07 Python
Python函数参数操作详解
Aug 03 Python
安装好Pycharm后如何配置Python解释器简易教程
Jun 28 Python
Python使用mongodb保存爬取豆瓣电影的数据过程解析
Aug 14 Python
windows 10 设定计划任务自动执行 python 脚本的方法
Sep 11 Python
Python转换itertools.chain对象为数组的方法
Feb 07 Python
pytorch 使用加载训练好的模型做inference
Feb 20 Python
opencv中图像叠加/图像融合/按位操作的实现
Apr 01 Python
Pytorch实现将模型的所有参数的梯度清0
Jun 24 Python
Python实现TCP通信的示例代码
Sep 09 #Python
Python3使用PySynth制作音乐的方法
Sep 09 #Python
python智联招聘爬虫并导入到excel代码实例
Sep 09 #Python
python 的 openpyxl模块 读取 Excel文件的方法
Sep 09 #Python
pymysql模块的使用(增删改查)详解
Sep 09 #Python
Django之模板层的实现代码
Sep 09 #Python
Django模板语言 Tags使用详解
Sep 09 #Python
You might like
Php注入点构造代码
2008/06/14 PHP
fleaphp下不确定的多条件查询的巧妙解决方法
2008/09/11 PHP
ThinkPHP3.1查询语言详解
2014/06/19 PHP
thinkphp的URL路由规则与配置实例
2014/11/26 PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
2019/06/03 PHP
javascript 表单的友好用户体现
2009/01/07 Javascript
jQuery拖动div、移动div、弹出层实现原理及示例
2014/04/08 Javascript
让浏览器DOM元素最后加载的js方法
2014/07/29 Javascript
jQuery焦点图切换特效代码分享
2015/09/15 Javascript
JQuery标签页效果实例详解
2015/12/24 Javascript
基于JavaScript实现添加到购物车效果附源码下载
2016/08/22 Javascript
prototype与__proto__区别详细介绍
2017/01/09 Javascript
前端主流框架vue学习笔记第二篇
2017/07/26 Javascript
JS自定义函数实现时间戳转换成date的方法示例
2017/08/27 Javascript
微信小程序与公众号实现数据互通的方法
2019/07/25 Javascript
layui加载数据显示loading加载完成loading消失的实例代码
2019/09/23 Javascript
Vue3新特性之在Composition API中使用CSS Modules
2020/07/13 Javascript
用Python解析XML的几种常见方法的介绍
2015/04/09 Python
python 远程统计文件代码分享
2015/05/14 Python
Flask框架URL管理操作示例【基于@app.route】
2018/07/23 Python
django实现模型字段动态choice的操作
2020/04/01 Python
numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)
2020/04/28 Python
Html5页面在微信端的分享的实现方法
2018/08/30 HTML / CSS
企划专员岗位职责
2013/12/09 职场文书
销售副总经理岗位职责
2013/12/11 职场文书
个人简历自我评价
2014/01/06 职场文书
股份转让协议书
2014/04/12 职场文书
毕业论文评语大全
2014/04/29 职场文书
干部对照检查材料范文
2014/08/26 职场文书
公司法定代表人授权委托书
2014/09/29 职场文书
社区学习党的群众路线教育实践活动心得体会
2014/11/03 职场文书
2014年社区党建工作总结
2014/11/11 职场文书
主持人开幕词
2015/01/29 职场文书
解除劳动合同通知书范本
2015/04/16 职场文书
教师“一帮一”结对子活动总结
2015/05/07 职场文书
小学教师教育随笔
2015/08/14 职场文书