python实现简易名片管理系统

作者:我是小海星 时间:2022-12-23 13:14:53 

本文实例为大家分享了python实现名片管理系统的具体代码,供大家参考,具体内容如下

功能需求

  • 用户输入数字选择要进行的操作

  • 添加名片

  • 删除名片

  • 修改名片

  • 查询名片

  • 显示所有名片

  • 退出系统

缺点(待改进)

数据未保存到后台,添加的数据仅限当次运行程序时使用

话不多说,上代码!

主程序


# coding=utf8
from method import *
# 导入定时器是为了方便观察每次操作的结果
from time import sleep

cards = []
# 让这个程序无限循环,直到用户想要其终止
while True:
   sleep(1)
   menu()
   ope_num = input('请输入要进行的操作(1-6): ')
   if ope_num == '1':
       addinfo(cards)
   elif ope_num == '2':
       delinfo(cards)
   elif ope_num == '3':
       updateinfo(cards)
   elif ope_num == '4':
       searchinfo(cards)
   elif ope_num == '5':
       showinfo(cards)
   elif ope_num == '6':
       sure = input('你确定要退出系统吗(YES/NO)')
       if sure.upper() == 'YES':
           break
   else:
       print('输入错误,请重新输入!!!(数字1-6)')

函数文件


# 定义一个menu方法
def menu():
   print('------------------\n'
         '\t名片管理系统\n'
         '1:添加名片\n'
         '2:删除名片\n'
         '3:修改名片\n'
         '4:查询名片\n'
         '5:显示所有名片\n'
         '6:退出系统\n'
         '------------------')

# 添加名片
def addinfo(lists):
   # 定义一个字典,存放这个名片的信息
   info = {}

# 获取姓名
   def getname():
       name = input('请输入姓名: ')

# 判断姓名是否由 数字、字母、数字和字母 组成,即:不能包含标点符号和空格,不能为空
       # 如果不符合要求,提示检查,并重新输入
       # 一直提示用户输入,直到符合要求
       while name.isalnum() != True:
           print('请检查输入!!! (不能包含标点符号和空格,不能为空) ')
           name = input('请输入姓名: ')

return name

# 获取手机号
   def getphone():
       phone = input('请输入手机号: ')

# 判断手机号是否由 11位数字 组成
       # 如果不符合要求,提示检查,并重新输入
       while (len(phone) != 11) or (phone.isdigit() != True):
           print('请检查输入!!! (由11位纯数字组成,不能为空) ')
           phone = input('请输入手机号: ')

return phone

# 获取QQ号
   def getqq():
       qq = input('请输入QQ号: ')

# 判断QQ号是否由 5-10位数字 组成
       # 如果不符合要求,提示检查,并重新输入
       while ((len(qq) < 5) or (len(qq) > 10)) or (qq.isdigit() != True):
           print('请检查输入!!! (由5-10位纯数字组成,不能为空) ')
           qq = input('请输入QQ号: ')

return qq

# 如果该名片的序号为,列表长度+1
   info['num'] = len(lists) + 1

# 通过调用其他函数获取对应信息
   info['name'] = getname()
   info['phone'] = getphone()
   info['qq'] = getqq()

# 将该字典存入名片列表中
   lists.append(info)

print('添加成功!')
   showinfo(lists)

# 输出所有名片列表
def showinfo(lists):
   print('序号\t姓名\t\t手机号\t\tQQ号'.ljust(30))
   for lis in lists:
       for value in lis.values():
           print(value, end='\t')

print('\n')

# 删除名片
def delinfo(lists):
   del_name = input('请输入您需要删除名片的姓名: ')
   flag = True
   for lis in lists:
       if lis['name'] == del_name:
           lists.remove(lis)
           print('删除成功!')
           showinfo(lists)
           flag = False
           break

if flag == True:
       print('名片不存在!!!')

# 修改名片
def updateinfo(lists):
   upd_name = input('请输入您需要修改名片的姓名: ')
   flag = True
   for lis in lists:
       if lis['name'] == upd_name:
           lis['name']=input('请输入新姓名: ')
           lis['phone']=input('请输入新手机号: ')
           lis['qq']=input('请输入新QQ号: ')
           print('修改成功!')
           showinfo(lists)
           flag = False
           break

if flag == True:
       print('名片不存在!!!')

# 查询名片
def searchinfo(lists):
   se_name = input('请输入您需要查询的姓名: ')
   flag = True
   for lis in lists:
       if lis['name'] == se_name:
           print('序号\t姓名\t\t手机号\t\tQQ号'.ljust(30))
           for value in lis.values():
               print(value, end='\t')

print('\n')
           flag = False
           break

if flag == True:
       print('名片不存在!!!')

执行结果

python实现简易名片管理系统

来源:https://blog.csdn.net/weixin_41803249/article/details/115556387

标签:python,名片管理系统
0
投稿

猜你喜欢

  • python类参数定义及数据扩展方式unsqueeze/expand

    2023-08-07 21:56:42
  • 解决出现SoapFault (looks like we got no XML document)的问题

    2023-11-19 04:21:01
  • Python自动发邮件脚本

    2022-12-31 18:31:29
  • python如何统计序列中元素

    2022-03-04 16:32:16
  • 使用python 爬虫抓站的一些技巧总结

    2021-01-02 07:35:57
  • css清除浮动“clear:both;”的应用

    2008-03-17 12:54:00
  • 通过gradio和摄像头获取照片和视频实现过程

    2023-07-08 18:02:30
  • OpenCV实战之实现手势虚拟缩放效果

    2023-04-06 12:51:09
  • vue iview的菜单组件Mune 点击不高亮的解决方案

    2024-06-07 15:20:08
  • Python实现字符串反转的常用方法分析【4种方法】

    2022-01-05 04:08:08
  • pandas库中 DataFrame的用法小结

    2021-08-11 00:54:01
  • 如何用python写一个简单的词法分析器

    2022-08-02 00:11:11
  • python调用系统中应用程序的函数示例

    2021-01-18 11:06:32
  • Python使用random模块生成随机数操作实例详解

    2022-06-28 21:50:27
  • Python知识点详解之正则表达式语法

    2022-02-08 17:01:31
  • python中的type,元类,类,对象用法

    2022-08-24 09:54:55
  • Docker如何部署Python项目的实现详解

    2022-01-16 07:30:31
  • workerman写mysql连接池的实例代码

    2024-01-20 02:52:26
  • ERROR 1222 (21000): The used SELECT statements have a different number of columns

    2024-01-15 02:31:28
  • Python机器学习算法之决策树算法的实现与优缺点

    2023-06-20 18:29:44
  • asp之家 网络编程 m.aspxhome.com