Python3控制台版名片管理系统完整实现

码头散步
码头散步
发布时间:2026-10-14| 4人浏览过
原创

本文提供基于Python3的控制台名片管理系统完整代码。系统包含新增、显示全部、查询及退出功能,通过card_main.py作为主入口,card_tools.py封装业务逻辑。代码演示了列表与字典的使用、异常处理及模块调用,适合Python初学者参考学习。

Python3名片管理系统概述

本文分享了一个使用Python3编写的名片管理系统的具体代码实现,供读者参考学习。

该系统主要包含四个核心功能:1. 新增名片;2. 显示全部名片;3. 查询特定名片;0. 退出系统。

系统代码结构说明

程序主文件命名为card_main.py。

主程序逻辑(card_main.py)


import card_tools
 
while True:
 """
  1.新增名片 2.显示全部 3.查询名片 0.退出系统
 """
 
 card_tools.show_menu() # 显示系统菜单
 action_str = card_tools.input_deal()
 
 if action_str == 1:
  print("您的操作是:%d" % action_str)
  card_tools.new_card()
  print()
 elif action_str == 2:
  print("您的操作是:%d" % action_str)
  card_tools.show_all()
  print()
 elif action_str == 3:
  print("您的操作是:%d" % action_str)
  card_tools.find_card()
  print()
 elif action_str == 0:
  print("退出系统")
  break
 else:
  print("您输入的不正确")

工具模块文件命名为card_tools.py。

工具模块实现(card_tools.py)


#! /usr/bin/python3
card_list = []
 
 
def input_deal():
 """
 输入处理
 :return:
 """
 while True:
  try:
   action_str = int(input("请输入你的操作:"))
  except ValueError:
   print("输入不正确,请重新输入!")
  else:
   return action_str
 
 
def show_menu():
 """
 显示名片系统的菜单
 :return:
 """
 
 print("*" * 50)
 print("名片管理系统1.0".center(21, " "))
 print("1.新建名片".center(10, "\t"))
 print("2.显示全部".center(10, "\t"))
 print("3.查询名片".center(10, "\t"))
 print("0.退出系统".center(10, "\t"))
 print("*" * 50)
 
 
def new_card():
 """
 新增名片
 :return:
 """
 
 print("新增名片")
 name = input("请输入您的名字:")
 phone = input("请输入您的手机号码:")
 qq = input("请输入您的QQ号码:")
 email = input("请输入您的邮箱地址:")
 card_dict = {"name": name, "phone": phone, "qq": qq, "email": email}
 # print(card_dict)
 
 card_list.append(card_dict);
 print(card_list)
 
 
def show_all():
 """
 显示所有名片
 :return:
 """
 for name in ["姓名", "电话", "QQ", "邮箱"]:
  print(name, end="\t\t")
 print()
 # print(card_list)
 
 if len(card_list) == 0:
  print("名片为空,请添加。")
 
 for card_dict in card_list:
  print("%s\t\t\t%s\t\t\tt%s\t\t\t%s" % (
   card_dict['name'], card_dict['phone'], card_dict['qq'], card_dict['email']))
 
 
def find_card():
 """
 查询名片
 :return:
 """
 find_name = input("请输入您要查询的姓名:")
 for card_dict in card_list:
  if card_dict['name'] == find_name:
   print("查询成功")
   print(card_dict)
   deal_card(card_dict)
   break
 else:
  print("查询失败")
 
 
def deal_card(card_dict):
 """
 对名片进行修改,查询
 :return:
 """
 
 action_str = input("请输入你要的操作:1.修改 2.删除 0.返回上级菜单")
 
 if action_str == "1":
  print("您的操作是:%s" % action_str)
  name = deal_input(card_dict, input("请输入您的名字:"), "name")
  phone = deal_input(card_dict, input("请输入您的手机号码:"), "phone")
  qq = deal_input(card_dict, input("请输入您的QQ号码:"), "qq")
  email = deal_input(card_dict, input("请输入您的邮箱地址:"), "email")
  card_dict['name'] = name
  card_dict['phone'] = phone
  card_dict['qq'] = qq
  card_dict['email'] = email
 
 elif action_str == "2":
  print("您的操作是:%s" % action_str)
  card_list.remove(card_dict)
  print("删除成功")
 else:
  print("返回上级菜单")
 
 
def deal_input(card_dict, str1, str2):
 """
 处理要修改的输入值
 :param card_dict:
 :param str1:
 :param str2:
 :return:
 """
 if len(str1) == 0:
  return card_dict[str2]
 else:
  return str1

如需获取更多学习资料,请关注专题《管理系统开发》。

以上就是本文的全部内容,希望能为读者的学习提供有益帮助,同时也欢迎大家继续支持本站。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。