python 实现生词本

英语学习中词汇量的积累是非常重要的,

我们在学习时通过自己的生词本积累词汇量。

本实例要求编写生词本程序,该程序具有以下功能:添加新单词

删除单词

查看生词列表

对单词进行分组管理

清空生词本

参考下:

#-*- coding:utf-8 -*-

class System():
    def __init__(self):
        self.data = {}
        self.load()
        while True:
            print("********** 菜单 ***********")
            print("\t1.查询")
            print("\t2.添加")
            print("\t3.删除")
            print("\t4.保存并退出")
            print("****************************")
            s = input("请输入1-4选择功能并按回车:")
            if s=="1":
                self.inquire()
            elif s=="2":
                self.add()
            elif s=="3":
                self.delete()
            elif s=="4":
                self.save()
                print('保存并退出字典')
                break
            else:
                print('输入有误')

    def load(self):
        try:
            with open("dictdata.txt","r", encoding='utf-8') as f:
                for s in f.readlines():
                    k,v = s.strip().split(" ",1)
                    self.data[k] = v
        except IOError:
            self.data = {}

    def save(self):
        with open("dictdata.txt","w", encoding='utf-8') as f:
            for k,v in self.data.items():
                f.write(f'{k} {v}\n')

    def inquire(self):
        s = input("输入要查询的单词:")
        if s in self.data.keys():
            print("单词:",s)
            print("解释:",self.data[s])
        else:
            print('字典库中未找到这个单词')

    def add(self):
        s = input("输入要添加的单词:")
        if s in self.data.keys():
            print("该单词已添加到字典库")
        else:
            self.data[s] = input("输入中文解释:")

    def delete(self):
        s = input("输入要删除的单词:")
        if s in self.data.keys():
            del self.data[s]
            print("删除成功")
        else:
            print('字典库中未找到这个单词')

sys = System()

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img