我的个人中英翻译记录小词典

        去年自己上pcb老师的python课的时候啥都不懂,写代码难看的一笔,帮学弟写一个python的个人中英翻译记录小词典,虽然技术不是很好,但也花了一点点时间写,功能不多,有错的地方还请各位大佬指出!

        主要有增删改查以及退出这五个功能。

我的个人中英翻译记录小词典
输入功能
add添加
delete删除
modify修改
search查找
exit退出

        首先有一个菜单函数,给自己看的功能速查表,哈哈哈哈。

def menu():
    print('# ----------我的个人中英翻译记录小词典---------- #')
    print('# -----输入-------------------------功能----- #')
    print('# -----add-------------------------添加----- #')
    print('# -----delete----------------------删除----- #')
    print('# -----modify----------------------修改----- #')
    print('# -----search----------------------查找----- #')
    print('# -----exit------------------------退出----- #')

        然后是五个功能的函数,除了退出在主函数中,其余的都单独写出来了。

def add(myDict):
    DE = input('请输入英语单词:')
    DC = input('请输入中文释义:')
    myDict[DE] = DC
    save_dict(myDict)
    print('已添加单词:' + DE, '中文释义为:' + myDict[DE])
def delete(myDict):
    DE = input('请输入要删除的单词:')
    if DE not in myDict.keys():
        print('尚未添加此单词')
    else:
        print('单词 ' + DE + ' 的中文释义是:', myDict[DE])
        input_if = input('请确认是否删除单词 ' + DE + '(yes/no):')
        if input_if == 'yes':
            del myDict[DE]
            save_dict(myDict)
            print('已删除单词 ' + DE)
        elif input_if == 'no':
            print('已取消删除单词 ' + DE)
        else:
            print('输入有误,请重新输入!!')
def modify(myDict):
    DE = input('请输入要修改的单词:')
    if DE not in myDict.keys():
        print('尚未添加此单词')
    else:
        print('单词 ' + DE + ' 的中文释义是:', myDict[DE])
        input_C = input('请输入修改后的中文释义:')
        input_if = input('请确认是否修改单词 ' + DE + ' 的意思为 ' + input_C + '(yes/no):')
        if input_if == 'yes':
            myDict[DE] = input_C
            save_dict(myDict)
            print('已修改单词 ' + DE + ' 的意思为 ' + input_C)
        elif input_if == 'no':
            print('已取消修改!')
        else:
            print('输入有误,请重新输入!!!')
def search(myDict):
    DE = input('请输入要找的单词:')
    if DE not in myDict.keys():
        input_if = input('尚未添加此单词,是否添加该单词(yes/no):')
        if input_if == 'yes':
            add(myDict)
    else:
        print('单词 ' + DE + ' 的中文释义是:', myDict[DE])

        但是这个小词典是要存到我们本地的,不然只是一次性的小词典了,词典以txt的形式保存在代码的相同目录下,文件名为dict,也可以修改,考虑到刚开始使用是没有这个文件的,所以在代码中有自动创建的功能,下面是代码。

def load_dict(myDict):
    file_path = r'dict.txt'
    if not os.path.exists(file_path):
        wf = open(file_path, 'w')
        wf.close()

    rf = open(file_path, 'r')
    lines = rf.readlines()
    for line in lines:
        myData = line.strip('\n').split(':')
        myDict[myData[0]] = myData[1]
    rf.close()

        光有一个加载文件的函数怎么够呢,当然得有一个随时能保存数据到文件里的函数喽。

def save_dict(myDict):
    file_path = r'dict.txt'
    wf = open(file_path, 'w')
    for k, v in myDict.items():
        wf.write(str(k) + ':' + str(v) + '\n')
    wf.close()

        最后就是用一个主函数让这些功能运作起来!!!

if __name__ == '__main__':
    while True:
        menu()
        EnglishDict = {}
        load_dict(EnglishDict)
        input_ = input("请输入你要干嘛:")
        if input_ == 'search':
            search(EnglishDict)
        elif input_ == 'add':
            add(EnglishDict)
        elif input_ == 'delete':
            delete(EnglishDict)
        elif input_ == 'modify':
            modify(EnglishDict)
        elif input_ == 'exit':
            print('已退出!')
            break
        else:
            print('输入有误,请重新输入!!!')

        尽管python很简单,但新手入门也是需要时间的,多看代码并且自己动手实际操作有较大帮助。这里放上全部的代码。

import os


def load_dict(myDict):
    file_path = r'dict.txt'
    if not os.path.exists(file_path):
        wf = open(file_path, 'w')
        wf.close()

    rf = open(file_path, 'r')
    lines = rf.readlines()
    for line in lines:
        myData = line.strip('\n').split(':')
        myDict[myData[0]] = myData[1]
    rf.close()


def save_dict(myDict):
    file_path = r'dict.txt'
    wf = open(file_path, 'w')
    for k, v in myDict.items():
        wf.write(str(k) + ':' + str(v) + '\n')
    wf.close()


def menu():
    print('# ----------我的个人中英翻译记录小词典---------- #')
    print('# -----输入-------------------------功能----- #')
    print('# -----add-------------------------添加----- #')
    print('# -----delete----------------------删除----- #')
    print('# -----modify----------------------修改----- #')
    print('# -----search----------------------查找----- #')
    print('# -----exit------------------------退出----- #')


def add(myDict):
    DE = input('请输入英语单词:')
    DC = input('请输入中文释义:')
    myDict[DE] = DC
    save_dict(myDict)
    print('已添加单词:' + DE, '中文释义为:' + myDict[DE])


def search(myDict):
    DE = input('请输入要找的单词:')
    if DE not in myDict.keys():
        input_if = input('尚未添加此单词,是否添加该单词(yes/no):')
        if input_if == 'yes':
            add(myDict)
    else:
        print('单词 ' + DE + ' 的中文释义是:', myDict[DE])


def delete(myDict):
    DE = input('请输入要删除的单词:')
    if DE not in myDict.keys():
        print('尚未添加此单词')
    else:
        print('单词 ' + DE + ' 的中文释义是:', myDict[DE])
        input_if = input('请确认是否删除单词 ' + DE + '(yes/no):')
        if input_if == 'yes':
            del myDict[DE]
            save_dict(myDict)
            print('已删除单词 ' + DE)
        elif input_if == 'no':
            print('已取消删除单词 ' + DE)
        else:
            print('输入有误,请重新输入!!')


def modify(myDict):
    DE = input('请输入要修改的单词:')
    if DE not in myDict.keys():
        print('尚未添加此单词')
    else:
        print('单词 ' + DE + ' 的中文释义是:', myDict[DE])
        input_C = input('请输入修改后的中文释义:')
        input_if = input('请确认是否修改单词 ' + DE + ' 的意思为 ' + input_C + '(yes/no):')
        if input_if == 'yes':
            myDict[DE] = input_C
            save_dict(myDict)
            print('已修改单词 ' + DE + ' 的意思为 ' + input_C)
        elif input_if == 'no':
            print('已取消修改!')
        else:
            print('输入有误,请重新输入!!!')


if __name__ == '__main__':
    while True:
        menu()
        EnglishDict = {}
        load_dict(EnglishDict)
        input_ = input("请输入你要干嘛:")
        if input_ == 'search':
            search(EnglishDict)
        elif input_ == 'add':
            add(EnglishDict)
        elif input_ == 'delete':
            delete(EnglishDict)
        elif input_ == 'modify':
            modify(EnglishDict)
        elif input_ == 'exit':
            print('已退出!')
            break
        else:
            print('输入有误,请重新输入!!!')


        程序员节要对自己好一点,喜欢给个一键三连哦~

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值