编程语言
首页 > 编程语言> > Python 简易英语词汇生词本

Python 简易英语词汇生词本

作者:互联网

  1 # 英语生词本
  2 
  3 """
  4 介绍:背单词是学英语最基础的一环,不少学生在背单词的过程中会整理自己的生词本,以不断拓展自己的词汇量。
  5 
  6 知识点:
  7     1、集合的创建、增添、删除、查询、遍历
  8     2、循环语句:while、for
  9     3、条件语句:if、elif、else
 10     4、跳转语句:break、continue
 11     5、旗帜应用
 12 
 13 不足(待改善):
 14     1、完善程序,可以尝试添加提示语,让程序可读性更强
 15     2、可尝试添加一些确认,例如:加一个条件,是否确认删除生词
 16     3、在背单词模式可以尝试做一些文章,(默认是‘000’退出),例如:加一些旁白介绍、加一些条件确认
 17     4、本程序硬伤:无法保存在文件或磁盘,可以尝试改善
 18 """
 19 
 20 
 21 # 定义一个可改变的集合变量,用于存储英语单词
 22 vocab = set()
 23 
 24 message = '请输入编号:'
 25 
 26 print(' =====欢迎来到开心英语生词表=====')
 27 
 28 while True:
 29 
 30     # 菜单界面
 31     print(' ============================')
 32     print('1.查看所有英语生词\t2.进入背单词模式')
 33     print('3.添加新的英语生词\t4.删除英语生词')
 34     print('5.查询英语生词\t0.退出')
 35 
 36     # 输入编号
 37     print('{}' .format(message), end='')
 38     num = input()
 39 
 40     # 1.查看所有英语生词
 41     if num == '1':
 42 
 43         count = 1               # 单词计数
 44 
 45         # 判断是否为空集合
 46         if vocab == set():
 47             print('\t\t 生词本无数据!')
 48             continue
 49 
 50         # 遍历打印
 51         for i in vocab:
 52             print('{} - {}' .format(i[0], i[1]), end=';\t')
 53 
 54             # 每5个单词换一行
 55             if count % 5 == 0:
 56                 print()
 57 
 58             count += 1          # 单词计数
 59 
 60         print()                 # 打印换行
 61 
 62     # 2.进入背单词模式
 63     elif num == '2':
 64 
 65         # 判断是否为空集合
 66         if vocab == set():
 67             print('\t\t 生词本无数据!')
 68             continue
 69 
 70         # 遍历单词
 71         for i in vocab:
 72             print('{} 的翻译是:' .format(i[0]), end='')
 73             chinese = input()
 74 
 75             # 判断翻译是否正确
 76             if chinese == i[1]:
 77                 print('\t\t 你太棒了!')
 78                 continue
 79 
 80             elif chinese == '000':          # 退出背单词模式
 81                 break
 82 
 83             else:
 84                 print('\t\t 你再想想!')
 85 
 86             # 查看翻译
 87             while True:
 88                 print('是否查看翻译(y/n):', end='')
 89                 select = input()
 90 
 91                 if select == 'y' or select == 'Y':
 92                     print('\t\t {} - {}' .format(i[0], i[1]))
 93                     break
 94 
 95                 elif select == 'n' or select == 'N':
 96                     break
 97 
 98                 else:
 99                     print('\t\t 输入有误!!!')
100 
101     # 3.添加新的英语生词
102     elif num == '3':
103 
104         # 请输入英语
105         english = input('请输入英语单词:')
106         chinese = input('请输入单词翻译:')
107 
108         # 存入集合,注意只能用add()
109         vocab.add((english, chinese))
110 
111         # 打印刚存入的生词
112         print('\t\t {} - {}\n\t\t 已添加到生词本' .format(english, chinese))
113 
114     # 4.删除英语生词
115     elif num == '4':
116 
117         flag_del = 0            # 删除单词旗帜
118 
119         # 判断是否为空集合
120         if vocab == set():
121             print('\t\t 生词本无数据!')
122             continue
123 
124         # 中文/英文删除
125         data = input('请输入需要删除的(英文/中文):')
126         for i in vocab:
127             if data == i[0] or data == i[1]:
128                 vocab.remove((i[0], i[1]))
129                 print('\t\t {} - {}\n\t\t 生词已删除!!!' .format(i[0], i[1]))
130                 flag_del = 1    # 删除单词旗帜
131                 break
132 
133         # 单词不存在
134         if flag_del != 1:
135             print('\t{} 未添加到生词本!' .format(data))
136 
137     # 5.查询英语生词
138     elif num == '5':
139 
140         flag_find = 0           # 查询旗帜
141 
142         # 判断是否为空集合
143         if vocab == set():
144             print('\t\t 生词本无数据!')
145             continue
146 
147         # 英语/中文查询
148         data = input('请输入需要查询的(英文/中文):')
149         for i in vocab:
150             if data == i[0] or data == i[1]:
151                 print('\t\t {} - {}' .format(i[0], i[1]))
152                 flag_find = 1   # 查询旗帜
153                 break
154 
155         # 未找到生词
156         if flag_find != 1:
157             print('\t{} 未添加到生词本!' .format(data))
158 
159     # 0.退出
160     elif num == '0':
161         print('\t  ===已退出生词表===')
162         break
163 
164     # 其他
165     else:
166         print('\t\t输入有误!!!')
167         message = '请重新输入编号:'
168         continue
169 
170     message = '请输入编号:'

运行结果:

 

标签:vocab,elif,英语词汇,format,Python,生词,print,英语
来源: https://www.cnblogs.com/ZhouHua2022/p/16282968.html