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函数式编程指南(二):从函数开始
Jun 24 Python
Python获取CPU、内存使用率以及网络使用状态代码
Feb 08 Python
Python实现确认字符串是否包含指定字符串的实例
May 02 Python
python之super的使用小结
Aug 13 Python
python 3.6.4 安装配置方法图文教程
Sep 18 Python
Numpy中对向量、矩阵的使用详解
Oct 29 Python
pygame编写音乐播放器的实现代码示例
Nov 19 Python
Python实现手机号自动判断男女性别(实例解析)
Dec 22 Python
Python中的With语句的使用及原理
Jul 29 Python
PyQT5速成教程之Qt Designer介绍与入门
Nov 02 Python
Python在后台自动解压各种压缩文件的实现方法
Nov 10 Python
Python爬虫设置Cookie解决网站拦截并爬取蚂蚁短租的问题
Feb 22 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
基于mysql的论坛(6)
2006/10/09 PHP
PHP超牛逼无限极分类生成树方法
2015/05/11 PHP
CI(CodeIgniter)框架视图中加载视图的方法
2017/03/24 PHP
浅谈PHP中pack、unpack的详细用法
2018/03/12 PHP
Ubuntu彻底删除PHP7.0的方法
2018/07/27 PHP
javascript innerHTML使用分析
2010/12/03 Javascript
js实现的切换面板实例代码
2013/06/17 Javascript
js、jquery图片动画、动态切换示例代码
2014/06/03 Javascript
自己封装的javascript事件队列函数版
2014/06/12 Javascript
手机端网页点击链接触发自动拨打或保存电话的示例代码
2014/08/15 Javascript
浅析BootStrap Treeview的简单使用
2016/10/12 Javascript
js绑定事件和解绑事件
2017/04/27 Javascript
详解javascript 正则表达式之分组与前瞻匹配
2018/05/30 Javascript
微信小程序实现折叠与展开文章功能
2018/06/12 Javascript
bootstrap实现点击删除按钮弹出确认框的实例代码
2018/08/16 Javascript
Vue使用NProgress的操作过程解析
2019/10/10 Javascript
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
2021/03/01 Vue.js
[05:41]2014DOTA2西雅图国际邀请赛 小组赛7月10日TOPPLAY
2014/07/10 DOTA
python获取本机mac地址和ip地址的方法
2015/04/29 Python
numpy.std() 计算矩阵标准差的方法
2018/07/11 Python
使用python搭建服务器并实现Android端与之通信的方法
2019/06/28 Python
python实现多进程通信实例分析
2019/09/01 Python
python获取网络图片方法及整理过程详解
2019/12/20 Python
Canvas高级路径操作之拖拽对象的实现
2019/08/05 HTML / CSS
Cotton On美国网站:澳洲时装连锁品牌
2016/10/25 全球购物
香港时装购物网站:ZALORA香港
2017/04/23 全球购物
IRO美国官网:法国服装品牌
2018/03/06 全球购物
加拿大租车网站:Enterprise Rent-A-Car
2018/07/26 全球购物
应届生求职信写作技巧
2013/10/24 职场文书
超市仓管员岗位职责
2014/04/07 职场文书
精神文明单位申报材料
2014/05/02 职场文书
检察院起诉意见书
2015/05/20 职场文书
演讲比赛主持词
2015/06/29 职场文书
导游词范文之颐和园/重庆/云台山
2019/09/10 职场文书
python3 删除所有自定义变量的操作
2021/04/08 Python
一道JS算法面试题——冒泡、选择排序
2021/04/21 Javascript