python背单词代码实现

背单词是英语学习中最基础的一环,不少学生在背诵单词的过程中会整理自己的生词本,以不断拓展自己的词汇量。本实例要求编写生词本程序,该程序需具备以下功能。

(1)查看生词列表功能:输出生词本中全部的单词;若生词本中没有单词,则提示“生词本内容为空”。

(2)背单词功能:从生词列表中取出一个单词,要求用户输入相应的翻译,输入正确提示“太棒了”,输入错误提示“再想想”。

(3)添加新单词功能:用户分别输入新单词和翻译,输入完成后展示添加的新单词和翻译,并提示用户“单词添加成功”。若用户输入的单词已经存在于生词本中,提示“此单词已存在”。

(4)删除单词功能:展示生词列表,用户输入单词以选择要删除的生词,若输入的单词不存在提示“删除的单词不存在”,生词删除后提示“删除成功”。

(5)清空生词本功能:查询生词列表,若列表为空提示“生词本内容为空”,否则清空生词本中的全部单词,并输出提示信息“生词本已清空”。

(6)退出生词本功能:退出生词本。

实例分析

本实例的生词本主要用于保存多个单词及其翻译,其中的单词与翻译是互相对应的,且单词是不能重复的,因此这里可将每组单词与翻译视为一个字典,将生词本视为包含多个单词的集合。但集合中存储的元素必须是可哈希类型的,其中不能包含字典,这时需要将字典转换为字符串之后再添加到集合中。

生词本具有5个功能,分别是查看生词本、背单词、添加新单词、删除单词和清空生词本。其中背单词的功能相当于遍历集合元素的操作,添加新单词的功能相当于往集合中添加元素的操作,删除单词和清空生词本的功能相当于删除和清空集合元素的操作。

代码实现

words_book = set()
words_only_set = set()
print('=' * 20)
print('欢迎使用生词本')
print('1.查看生词本')
print('2.背单词')
print('3.添加新单词')
print('4.删除单词')
print('5.清空生词本')
print('6.退出生词本')
print('=' * 20)
while True:
    word_dict = {}
    fun_num = input('请输入功能编号:')
    if fun_num == '1':  # 查看生词本
        if len(words_book) == 0:
            print('生词本内容为空')
        else:
            print(words_book)
    elif fun_num == '2':  # 背单词
        if len(words_book) == 0:
            print('生词本内容为空')
        else:
            for random_words in words_book:
                w = random_words.split(':')
                in_words = input("请输入" + w[0] + '翻译' + ':\n')
                if in_words == w[1].strip():
                    print('太棒了')
                else:
                    print('再想想')
    elif fun_num == '3':  # 添加新单词
        new_words = input('请输入新单词:')
        # 检测单词是否重复
        if new_words in words_only_set:
            # 添加的单词重复
            print('此单词已存在')
        else:
            # 执行单词添加
            new_chinese = input('请输入单词翻译:')
            word_dict.update({new_words: new_chinese})
            # 转换成字符串存入set集合中
            dict_str = str(word_dict).replace('{', '').replace('}','').replace("'", '')                                                           
            words_book.add(dict_str)
            print('单词添加成功')
            dict_str = dict_str.replace(',', '')
            print(dict_str)
            words_only_set.add(new_words)
    elif fun_num == '4':  # 删除单词
        if len(words_book) == 0:
            print('生词本为空')
        else:
            temp_list = list(words_book)
            print(temp_list)
            del_wd = input("请输入要删除的单词")
            # 如果要删除的单词不在单词集合中
            if del_wd not in words_only_set:
                print('删除的单词不存在')
            else:
                words_only_set.discard(del_wd)
                for temp in temp_list:
                    if del_wd in temp:
                        words_book.remove(temp)
                    print('删除成功')
    elif fun_num == '5':  # 清空
        if len(words_book) == 0:
            print('生词本为空')
        else:
            words_only_set.clear()
            words_book.clear()
            print('生词本清空成功')
    elif fun_num == '6':  # 退出
        print('退出成功')
        break

  • 12
    点赞
  • 116
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
【资源说明】 基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip 基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip 基于PyQt5和Python开发的弹窗式背单词项目源码(课程设计).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暖暖的味道

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值