2021-10-20

单词本

 

import random
prebook = ["记录单词的书", "课本", "某种想法", "背诵课文", "做作业", "在家睡觉"]
wordbook = {}
print("0 : 退出程序", "1 : 查看生词", "2 : 背单词", "3 : 添加单词", "4 : 删除单词", "5 : 清空单词表", sep = '\n')
def View():
    print("输入 ## 退出, a 单个单词查询, b 查看全部单词")
    bl = True
    while bl:
        od = input()
        if od == '##':
            bl = False
        if od != 'a' and od != 'b':
            print("命令错误请重新输入")
        elif od == 'a':
            while True:
                print("请输入查询单词")
                word = input()
                if word == '##':
                    bl = False
                    break
                if not word in wordbook.keys():
                    print("该单词不存在")
                else :
                    print(wordbook[word])
        elif od == 'b':
            for key in wordbook.keys():
                print("{} : {}".format(key, wordbook[key]))
def Recite():
    print("a : 根据释义写出单词", "b : 根据单词选择正确翻译", "c : 退出")
    while True:
        print("\n请从(a b c)选择输入 :")
        order = input()
        if order != 'a' and order != 'b' and order != 'c':
            print("命令错误, 请重新输入:")
        else:
            if order == 'c':
                return
            elif order == 'a':
                print("输入 # 跳过该单词, ## 退出")
                bl = True
                for i in wordbook.keys():
                    if bl == False:
                        break
                    print(wordbook[i])
                    while True:
                        ans = input()
                        if ans == '#':
                            break
                        elif ans == '##':
                            bl = False
                            break
                        elif ans != i:
                            print("答案错误, 请重新输入:")
                        elif ans == i:
                            print("正确")
                            break
                print("背诵结束, 请进行下一步操作")
            elif order == 'b':
                print("输入 # 跳过该单词, ## 退出")
                pl = True
                for i in wordbook.keys():
                    print(i)
                    if pl == False:
                        break
                    lista = random.sample(list(wordbook.values())+prebook, 3)
                    lista.append(wordbook[i])
                    random.shuffle(lista)
                    print("1 : {}\n2 : {}\n3 : {}\n4 : {}".format(lista[0], lista[1], lista[2], lista[3]))
                    while True:
                        od = input()
                        if od == '#':
                            break
                        elif od == '##':
                            pl = False
                            break;
                        elif not od in ['1', '2', '3', '4']:
                            print("没有该选项")
                        elif lista[int(od)-1] == wordbook[i]:
                            print("正确")
                            break
                        else :
                            print("错误")
                print("单词背诵结束, 请进行下一步操作")
def AddWord():
    while True:
        print("请按要求输入要添加的单词")
        word = input("单词(或输入 ## 退出) :")
        if word == '##':
            break
        elif word in wordbook.keys():
            print("该单词已存在")
        else:
            interpretation = input("释义:")
            wordbook[word] = interpretation
            print("添加完成")

def DeleteWord():
    while True:
        print("请输入要删除的单词或输入 ## 退出:")
        word = input()
        if word == "##":
            break
        elif not word in wordbook.keys():
            print("该单词不存在")
        else:
            wordbook.pop(word)
            print("删除成功")

def ClearBook():
    print("确定要清空单词本吗 Y/n")
    while True:
        od = input()
        if od != 'Y' and od != 'n':
            print("命令错误, 请重新输入:")
        elif od == 'Y':
            wordbook.clear()
            print("单词本已清空")
            break
        elif od == 'n':
            break

while True:
    print("\n请从(0 1 2 3 4 5)中输入选项:")
    order = input()
    if not order.isdigit() or int(order) > 5:
        print("命令错误, 请重新输入:")
    else:
        n = int(order)
        if n == 0:
            exit(0)
        elif n == 1:
            if len(wordbook) == 0:
                print("单词本为空")
            else:
                View()
        elif n == 2:
            if len(wordbook) == 0:
                print("单词本为空")
            else:
                Recite()
        elif n == 3:
            AddWord()
        elif n == 4:
            if len(wordbook) == 0:
                print("单词本为空")
            else:
                DeleteWord()
        else:
            if len(wordbook) == 0:
                print("单词本为空")
            else:
                ClearBook()


 

通讯录

maillist = {}
print("0 : 退出", "1 : 添加联系人", "2 : 查看和修改联系人", "3 : 删除联系人")
def addContact():
    while True:
        print("\n按要求输入信息或输入 ## 退出")
        name = input("姓名 : ")
        if name == '##':
            break
        number = input("号码 : ")
        if number == '##':
            break
        mailbox = input("邮箱 : ")
        if mailbox == '##':
            break
        company = input("公司 : ")
        if company == '##':
            break
        remarks = input("备注 : ")
        if remarks == '##':
            break
        user = {'name':name, 'number':number, 'mailbox':mailbox, 'company':company, 'remarks':remarks}
        maillist[number] = user
        print("添加成功")
def ViewAndModify():
    print("a : 查看, b : 修改, ## : 退出")
    while True:
        print("\n请从 a b ## 中选择输入 :")
        od = input()
        if od == '##':
            break
        if od != 'a' and od != 'b':
            print("命令错误")
        elif od == 'a':
            print("1 输出全部成员号码和姓名; 2 输入号码查询联系人; ## 退出")
            while True:
                order = input()
                if order == '##':
                    break
                elif order == '1':
                    for i in maillist.keys():
                       print("{} : {}".format(maillist[i]['name'], i))
                elif order == '2':
                    print("输入号码或输入 ## 退出")
                    while True:
                        number = input("输入号码 : ")
                        if number == '##':
                            break
                        if not number in maillist.keys():
                            print("该号码不存在")
                        else:
                            print("姓名 : {}\n号码 : {}\n邮箱 : {}\n公司 : {}\n备注 : {}".format(maillist[number]['name'], maillist[number]['number'], maillist[number]['mailbox'], maillist[number]['company'], maillist[number]['remarks']))
                else:
                    print("命令错误")
        elif od == 'b':
            print("\n输入要修改的联系人号码或 ## 退出")
            while True:
                order = input("输入号码 : ")
                if order == '##':
                    break
                elif not order in maillist.keys():
                    print("该号码不存在")
                else :
                    print("输入 ## 可退出")
                    name = input("姓名({}) : ".format(maillist[order]['name']))
                    if name == '##':
                        break
                    number = input( "号码({}) : ".format(maillist[order]['number']))
                    if number == '##':
                        break
                    mailbox = input( "邮箱({}) : ".format(maillist[order]['mailbox']))
                    if mailbox == '##':
                        break
                    company = input( "公司({}) : ".format(maillist[order]['company']))
                    if company == '##':
                        break
                    remarks = input( "备注({}) : ".format(maillist[order]['remarks']))
                    if remarks == '##':
                        break
                    if name != '':
                        maillist[order]['name'] = name
                    if number != '':
                        maillist[order]['number'] = number
                    if mailbox != '':
                        maillist[order]['mailbox'] = mailbox
                    if company != '':
                        maillist[order]['company'] = company
                    if remarks != '':
                        maillist[order]['remarks'] = remarks
                    if order != maillist[order]['number']:
                        maillist[number] = maillist[order]
                        maillist.pop(order)
                        order = number
                    print ("修改完成\n")
                    
                    print("姓名 : {}\n号码 : {}\n邮箱 : {}\n公司 : {}\n备注 : {}".format(maillist[order]['name'], maillist[order]['number'], maillist[order]['mailbox'], maillist[order]['company'], maillist[order]['remarks']))

def DeleteContact():
    print("\n输入要删除的联系人的号码或 ## 退出")
    while True:
        number = input("输入号码 : ")
        if number == '##':
            break
        if not number in maillist.keys():
            print("该联系人不存在")
        else:
            maillist.pop(number)
            print("删除成功")

while True:
    order = input("\n从 0 1 2 3 中选择输入命令 : ")
    if order == '0':
        exit(0)
    elif order == '1':
        addContact()
    elif order == '2':
        ViewAndModify()
    elif order == '3':
        DeleteContact()
    else:
        print("命令错误")

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值