前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2019年学习Python-day9作业

2019年学习Python-day9作业

原创
作者头像
qq317062516
修改2019-12-06 11:19:30
4510
修改2019-12-06 11:19:30
举报
文章被收录于专栏:python学习2020python学习2020

用Python实现简单的名片管理系统

主程序很好懂,最近几天实在是忙的头晕,作业都没空做了,代码按课件搬来的

代码语言:javascript
复制

# 1.程序启动,显示名片管理系统欢迎界面,并显示功能菜单
# ** ** ** ** ** ** ** ** ** ** ** ** ** **
# 欢迎使用【名片管理系统】V1 .0
# 1.新建名片
# 2.显示全部
# 3.查询名片
# 0.退出系统
# ** ** ** ** ** ** ** ** ** ** ** ** ** **
# 2.用户用数字选择不同的功能
# 3.根据功能选择,执行不同的功能
# 4.用户名片需要记录用户的姓名、电话、QQ、邮件
# 5.如果查询到指定的名片,用户可以选择修改或者删除名片
代码语言:python
复制
import cards_tools
# 

# 无限循环,用户决定什么时候退出循环
while True:
    # 显示系统菜单
    cards_tools.show_menu()
    action = input('请选择操作系统')
    print('您选择的操作系统是:%s' % action)

    # 根据用户输入决定后续操作
    if action in ['1', '2', '3', '4']:
        # 新增名片
        if action == '1':
            cards_tools.new_card()
        # 显示全部
        elif action == '2':
            cards_tools.show_all()
        # 查询名片
        elif action == '3':
            cards_tools.search_card()
    # 退出系统
    elif action == '0':
        print('欢迎再次使用【名片管理系统】')
        break
    else:
        print('输入错误,请重新输入')
代码语言:python
复制
card_list = []
# 用列表记录所有名片字典


def show_menu():
    """显示菜单"""
    print('** ' * 20)
    print('欢迎使用【名片管理系统】v1.0')
    print('1.新建名片')
    print('2.显示全部')
    print('3.查询名片')
    print('0.退出系统')
    print('** ' * 20)


def new_card():
    """新建名片"""
    print('- ' * 20)
    print('功能:新建名片')
    # 1.提示用户输入名片信息
    name = input('请输入姓名:')
    phone = input('请输入电话:')
    qq = input('请输入QQ号码:')
    email = input('请输入邮箱:')
    # 2.将用户信息保存到一个字典
    card_dict = {'name': name,
                 'phone': phone,
                 'qq': qq,
                 'email': email}
    # 3.将用户字典添加到名片列表
    card_list.append(card_dict)
    # print(card_dict)
    # 4.提示添加成功信息
    print('成功添加%s的名片' % card_dict['name'])


def show_all():
    """显示全部"""
    print('- ' * 20)
    print('功能:显示全部')
    if len(card_list) == 0:
        print('提示:没有任何记录')
        return

    # 打印表头
    for name in ['姓名', '电话', 'QQ', '邮箱']:
        print(name, end='\t\t')
    print('')
    print('= ' * 20)
    for card_dict in card_list:
        print("%s\t\t%s\t\t%s\t\t%s" % (card_dict['name'],
                                        card_dict['phone'],
                                        card_dict['qq'],
                                        card_dict['email']))
                                        
                                        
def search_card():
    """查询名片"""
    print('- ' * 20)
    print('功能:查询名片')
    if len(card_list) == 0:
        print('提示:名片薄为空,转到新建名片')
        return new_card()
    # 1.提示要搜索的姓名
    find_name = input('请输入要搜索的姓名:')
    # 2.变量字典
    for card_dict in card_list:
        if card_dict['name'] == find_name:
            print('姓名\t\t电话\t\tQQ\t\t邮箱')
            print('- ' * 20)
            print("%s\t\t%s\t\t%s\t\t%s" % (card_dict['name'],
                                            card_dict['phone'],
                                            card_dict['qq'],
                                            card_dict['email']))
            print('- ' * 20)
            # 针对找到的字典进行后续操作:修改、删除
            deal_card(card_dict)
            break
    else:
        print('没有找到“ %s ”的名片' % find_name)


def deal_card(find_dict):
    action = input('请选择要执行的操作'
                   '【1】修改【2】删除【其他键】返回上级菜单')
    if action == '1':
        find_dict['name'] = input('姓名修改为(按回车不修改):') or find_dict['name']
        find_dict['phone'] = input('电话修改为(按回车不修改):') or find_dict['phone']
        find_dict['qq'] = input('QQ修改为(按回车不修改):') or find_dict['qq']
        find_dict['email'] = input('邮箱修改为(按回车不修改):') or find_dict['email']
        print("名片修改成功")
        print(find_dict)
    elif action == '2':
        card_list.remove(find_dict)
        print('删除成功')

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 用Python实现简单的名片管理系统
    • 主程序很好懂,最近几天实在是忙的头晕,作业都没空做了,代码按课件搬来的
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档