aklnibi 2021-12-31 21:48 采纳率: 50%
浏览 858
已结题

Python有关制作英文学习词典问题。

制作英文学习词典。编写程序制作英文学习词典,词典有 3 个基本功能:添加、
查询和退出。程序读取源文件路径下的 txt 格式词典文件,若没有就创建一个。
词典文件存储方式为“英文单词 中文单词”,每行仅有一对中英释义。程序会根据
用户的选择进入相应的功能模块,并显示相应的操作提示。当添加的单词已存在
时,显示“该单词已添加到字典库”;当查询的单词不存在时,显示“字典库中未找
到这个单词”。用户输入其他选项时,提示“输入有误”。

  • 写回答

4条回答 默认 最新

  • 神仙别闹 2021-12-31 22:21
    关注

    可以参考下这个

    
    #英文字典
     
     
    def oppendict():
        dir = 'mydict.txt'
        dicts = {}
        tf=open(dir,'r+')
        print('本字典已有的内容:')
        for item in tf:
            k,v=tuple(item.replace('\n','').split(':'))
            print(k,v)
            dicts[k]=v
        tf.close()
        return dicts
     
    dicts=oppendict()
     
    #查字典
    def lookup():
        quest=input("请输入要查询的单词")
        result=dicts.get(quest,"字典库中未找到这个单词")
        print('该单词的解释为:'+result+'\n')
     
    #插入新单词
    def inserts():
        word = input("请输入要插入的单词:")
        if dicts.get(word):
            print('该单词已添加到字典库'+'\n')
        else:
            explain=input("请输入该单词的解释:")
            dicts[word]=explain
     
     
    #更新单词解释
    def renew():
        word = input('请输入需要更新解释的单词:')
        explain=input("请输入单词的新解释:")
        dicts[word]=explain
     
     
    #删除
    def deldict():
        word = input('请输入删除的单词:')
        if dicts.get(word):
            del dicts[word]
        else:
            print('没有这个单词')
        print(dicts)
     
    #存档
    def savedict():
        dir='mydict.txt'
        tf = open(dir,'w+')
        for item in dicts.items():
            tf.write(':'.join(item) + '\n' )
        tf.close()
     
    def meun():
        meuns=['1.查询','2.新增','3.更新','4.删除','5.退出']
        funcname = ['','lookup','inserts' ,'renew' , 'deldict']
        while True:
            print('\n'.join(meuns))
            trs = eval(input('请用数字选择:'))
            if trs==5:
                break
            elif trs in range(1,5):
                eval(funcname[trs])()
            else:
                print('输入有误'+'\n')
     
     
     
    if __name__=='__main__':
        print('欢迎使用本字典'.center(20,'='))
        meun()
        print('再见'.center(20,'='))
        savedict()
        dicts = oppendict()
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月1日
  • 已采纳回答 1月1日
  • 创建了问题 12月31日

悬赏问题

  • ¥18 深度学习tensorflow1,ssdv1,coco数据集训练一个模型
  • ¥100 关于注册表摄像头和麦克风的问题
  • ¥30 代码本地运行正常,但是TOMCAT部署时闪退
  • ¥15 关于#python#的问题
  • ¥15 主机可以ping通路由器但是连不上网怎么办
  • ¥15 数据库一张以时间排好序的表中,找出多次相邻的那些行
  • ¥50 关于DynamoRIO处理多线程程序时候的问题
  • ¥15 kubeadm部署k8s出错
  • ¥15 Abaqus打不开cae文件怎么办?
  • ¥15 小程序准备上线,软件开发公司需要提供哪些资料给甲方