Python练手系列之--名片管理系统

列表或字典做全局变量在函数中调用可以不用加global

# 用来存储名片
card_infors = []


def print_menu():
    """完成打印功能菜单"""
    print('=' * 50)
    print(' 名片管理系统函数版')
    print(' 1.添加一个新的名片')
    print(' 2.删除一个名片')
    print(' 3.修改一个名片')
    print(' 4.查询一个名片')
    print(' 5.显示所有名片')
    print(' 6.推出系统')
    print('=' * 50)


def add_new_card_infor():
    """完成添加一个新的名片"""
    new_name = input('请输入新的名字:')
    new_qq = input('请输入新的QQ:')
    new_weixin = input('请输入新的微信:')
    new_addr = input('请输入新的地址:')
    # 定义一个新的字典来存储一个新的名片
    new_infor = {}
    new_infor['name'] = new_name
    new_infor['qq'] = new_qq
    new_infor['weixin'] = new_weixin
    new_infor['addr'] = new_addr
    # 将字典添加到列表中
    global card_infors
    card_infors.append(new_infor)


def find_card_infor():
    """查询一个名片"""
    global card_infors
    find_name = input('请输入要查询的名字:')
    find_flag = 0
    for temp in card_infors:
        if find_name == temp['name']:
            print("%s\t%s\t%s\t%s\t" % (temp['name'], temp['qq'], temp['weixin'], temp['addr']))
            find_flag = 1
            break
    if find_flag == 0:
        print("查无此人....")


def show_all_infor():
    """显示所有的名片信息"""
    global card_infors
    print("姓名\tQQ\t微信\t住址")
    for temp in card_infors:
        print("%s\t%s\t%s\t%s" % (temp['name'], temp['qq'], temp['weixin'], temp['addr']))


def main():
    # 1.打印功能提示
    print_menu()

    while True:
        num = int(input('获取用户的输入号: '))
        if num == 1:
            add_new_card_infor()
        elif num == 2:
            pass
        elif num == 3:
            pass
        elif num == 4:
            find_card_infor()
        elif num == 5:
            show_all_infor()
        elif num == 6:
            break
        else:
            print('输入有误,请重新输入')

        print(" ")

#调用主函数
main()

 

posted @ 2018-01-05 11:04  前端老菜鸟  阅读(1543)  评论(0编辑  收藏  举报