0
点赞
收藏
分享

微信扫一扫

使用列表实现名片管理系统的增删改查。

Show you my code

代码如下

def enter(alist):  # 将用户输入信息构造临时列表,作为主函数列表的第二层
    templist = []
    name = input("\n请输入姓名:")
    templist.append(name)
    while True:
        telnumber = input("请输入电话号码:")
        if telnumber.isnumeric():  # 判断是否为数字
            break
        else:
            print("输入有误,重新输入")
    templist.append(telnumber)
    company = input("请输入公司名称:")
    remarks = input("请输入备注:")
    templist.append(company)
    templist.append(remarks)
    alist.append(templist)
    print("录入完成!\n\n")


def showList(alist):
    print("姓名       电话号码       公司       备注")
    for i in range(len(alist)):
        for s in range(len(alist[i])):
            if s != len(alist[i]) - 1:  # 按格式输出列表
                print(str(alist[i][s]), end='       ')
            else:
                print(str(alist[i][s]) + '\n')


def dellist(alist):
    target = input("请输入您希望删除的名片:")
    flag = 0
    # for s in alist:
    #     print(s)
    for s in range(len(alist)):
        # print('s:' + str(s))
        try:
            alist[s].index(target)  # 查找需要删除的名片
            flag += 1
            alist.pop(s)
            # print("alist[s].index(target):" + str(alist[s].index(target)))
        except ValueError:
            flag = flag
    if flag == 0:
        print("未找到该名片。")
    else:
        print("\n")
        print("{} 的名片已删除!\n".format(target))


def change(alist):
    target = input("请输入您希望修改的名片:")
    flag = 0
    # for s in alist:
    #     print(s)
    for s in range(len(alist)):
        # print('s:' + str(s))
        try:
            alist[s].index(target)  # 查找需要修改的名片
            flag += 1
            amend = int(input("请选择您要修改的信息:\n"
                              "1.名称\n"
                              "2.电话号码\n"
                              "3.公司\n"
                              "4.备注\n"
                              "0.退出\n"))
            if amend == 0:
                break
            elif amend == 2:
                while True:
                    alist[s][amend - 1] = input("请输入电话号码:")
                    if alist[s][amend - 1].isnumeric():  # 判断是否为数字
                        break
                    else:
                        print("输入有误,重新输入")
            else:
                alist[s][amend - 1] = input("请输入修改信息:")
                print("修改完成!")

            # print("alist[s].index(target):" + str(alist[s].index(target)))
        except ValueError:
            flag = flag
    if flag == 0:
        print("未找到该名片。")
    else:
        print("\n")
        print("{} 的名片已修改!\n".format(target))


mainlist = []  # 创建一个主列表,用来保存输入函数产生的数据
while True:
    try:
        a = int(input("---------名片管理器---------\n"
                      "1.创建新名片\n"
                      "2.显示名片列表\n"
                      "3.删除名片\n"
                      "4.编辑名片\n"
                      "0.退出系统\n"
                      "请选择:"))
    except ValueError:
        print("输入错误,请重新输入。\n")
    else:
        if a == 1:
            enter(mainlist)
        elif a == 2:
            showList(mainlist)
        elif a == 3:
            dellist(mainlist)
        elif a == 4:
            change(mainlist)
        elif a == 0:
            break
        else:
            print("输入错误,请重新输入。\n")

总结

本文仅仅简单演示了列表的使用,而列表提供了大量能使我们快速便捷地处理数据的函数和方法。


举报

相关推荐

0 条评论