Python—名片管理系统

网友投稿 1089 2022-05-29

《Python语言设计》

Python—名片管理系统

课程设计说明书

题    目    名片管理系统

学    号

姓    名

指导教师    刘麒

日    期    2021.7.1

内蒙古科技大学课程设计任务及指导书

课程设计名称    Python语言课程设计

设计题目    名片管理系统的设计

指导教师        时间

一、教学要求

1. 巩固和加深学生对python语言课程的基本知识的理解和掌握

2. 掌握python语言编程和程序调试的基本技能

3. 利用python语言进行基本的软件设计

4. 掌握书写程序设计说明文档的能力

5. 提高运用python语言解决实际问题的能力

二、设计资料及参数

通过本项目的学习,学员可以了解项目开发的流程,掌握项目需求分析、设计与功能的代码实现。提高同学们独立分析需求与功能实现的能力。

项目知识点:变量、流程控制、函数、模块等python基础中常用的知识点。

使用python设计一个名片管理系统,能提供下列服务:

1. 程序启动,显示名片管理系统欢迎界面,并显示功能菜单

2. 用户用数字选择不同的功能

3. 根据功能选择,执行不同的功能

4. 用户名片需要记录用户的 姓名、电话、QQ、邮件

5. 如果查询到指定的名片,用户可以选择 修改 或者 删除 名片

三、设计要求及成果

学生独立完成设计

编码并调试通过

制作课程设计报告

准备答辩材料

四、进度安排

资料查阅与讨论(1天)

系统分析(1天)

系统的开发与测试(2天)

编写课程设计说明书和验收(1天)

五、评分标准

通过设计答辩方式,并结合学生的动手能力,独立分析解决问题的能力和创新精神,总结报告和答辩水平以及学习态度综合考评。

课程设计成绩分三部分,设计报告占40%,设计作品占40%,答辩水平占20%。

成绩分优、良、中、及格和不及格五等。

每人独立完成所交给的任务,单独评定成绩。

课程设计报告需要提交可运行程序文件及完整设计文档

建议参考资料

1、《Python快速编程入门》,黑马程序员,人民邮电出版社,2017年08月

2、《Python语言程序设计基础》(第2版),嵩天主编,高等教育出版社,2017年02月

3、《Python语言及其应用》[美] 卢布诺维克著,人民邮电出版社,2016年01月

4、《Python程序设计与算法基础教程》,江红,清华大学出版社,2017年07月

备注:本表由指导教师在设计开始前一周按所分设计小组分别填写完成,经由领导审核签字后存档备查。同时要求每位学生附一份适合自己设计内容的任务及指导书在成果档案袋中。

指导教师(签字):                 系部负责人审核签字:

目    录

目    录    II

第一章  需求分析    3

1.1 引言    3

1.2 任务概述    3

1.3 数据描述    4

1.4 功能需求    4

1.5 性能需求    4

1.6 运行需求    5

第二章 概要设计    6

2.1 总体设计    6

2.1.1文件准备    6

2.1.2程序主页面设计    6

2.1.3搜索模块页面设计    6

2.2 数据类型定义    7

2.3 接口设计    7

2.4 运行界面设计    8

第三章 详细设计    9

3.1 添加模块设计    9

3.2 查询模块设计    9

第四章 测试分析    10

4.1 测试程序执行情况    10

4.2 出现的问题和解决的方法    10

第五章 实训总结    12

附录:程序代码    13

参考文献    14

第一章  需求分析

1.1引言

传统的手工方式,数据容易丢失,在统计时易发生错误高,速度慢。而使用计算机可以提高工作速度以及数据的准确性。从而提高了管理效率。在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,名片管理系统以计算机为工具,通过对所需信息的管理,把管理员从繁琐的数据计算处理中解脱出来。为用户节省很多时间跟精力,提高用户的工作效率。

随着计算机的普及,越来越多的管理系统应运而生。同时,随着人们交往范围的不断扩大,我们需要同更多的人保持交流和联系,尤其是已经参加了工作的公司职员,除了熟悉的朋友,还有很多的客户,我们都要时不时的同他们保持联系,这时个人名片管理系统就可以派上用场了。

个人名片管理系统是用于辅助个人完成其名片有序管理的计算机软件系统,系统实施的目的旨在帮助用户完成其私人名片管理的数字化,以提供较手工方式下更高的效率和更低的出错率。

电子名片管理系统要实现的目标是:

将用户目前在处理名片管理工作时所采用的手工处理方式进行计算机化,从而与整个办公自动化系统的数字化趋势相协调,以求为用户提供更为专业和高效的个人管理服务。

1.2任务概述

本系统属于人员信息管理系统中名片管理模块,实现网络管理系统中关于名片管理的子功能。通过此软件,提高用软件工程分析问题、解决问题的能力,同时增强对数据库和python的使用能力。

目标:搭建名片管理系统 框架结构

准备文件,确定文件名,保证能够 在需要的位置 编写代码

编写 主运行循环,实现基本的 用户输入和判断

1.3数据描述

1.静态数据:

所谓静态数据,指在运行过程中主要作为参考的数据,它们在很长的一段时间内不会变化,一般不随运行而改变。

2.动态数据:

所谓动态数据.包括所有在运行中要发生变化的数据以及在运行中要输入、输出的数据。

3.系统流程图:

1.4功能需求

1. 程序启动,显示名片管理系统欢迎界面,并显示功能菜单

2. 用户用数字选择不同的功能

3. 根据功能选择,执行不同的功能

4. 用户名片需要记录用户的 姓名、电话、QQ、邮件

5. 将用户输入的数据排序,可以看电话,QQ,邮件的大小排序

6. 如果查询到指定的名片,用户可以选择 修改 或者 删除 名片

提示用户依次输入名片信息

将名片信息保存到一个字典

将字典添加到名片列表

提示名片添加完成

1.5性能需求

用户进入系统在终端输入0~4数字序号,如果输入其他字符会显示“输入错误,请重新输入”,输出会以字符型输出相关内容。在名片管理模块中,我们可以新建名片,可以修改名片,可以删除名片资料,对名片列表进行了显示,提高用户体验。

1.6运行需求

(1)、数据精确度

进行操作请求时,如:名片录入、名片删除、名片修改、名片查询时,应保证输入数据与数据库数据的相匹配性。而在满足用户请求时,系统应保证所响应数据的正确性和全而性。

(2)、时间性

为满足用户高效要求,数据的响应时间、更新处理时间、数据转换与传输时间、运行时间都应在可接受范围之内。

第二章概要设计

2.1总体设计

2.1.1文件准备

新建 cards_main.py 保存 主程序功能代码

程序的入口

每一次启动名片管理系统都通过 main 这个文件启动

新建 cards_tools.py 保存 所有名片功能函数

将对名片的 新增、查询、修改、删除 等功能封装在不同的函数中

2.1.2程序主页面设计

欢迎使用名片管理系统

1.新增名片

2.显示全部

3.搜索名片

0.退出系统

请选择序号:

2.1.3搜索模块页面设计

进入搜索模块后,搜索到用户名,会接入修改模块和删除模块。

2.2数据类型定义

cards_main.py 保存 主程序功能代码

cards_tools.py 保存 所有名片功能函数

def card():              新增名片函数

def show():             显示全部名片函数

def search():            搜索名片函数

def deal_card(find_d):    删除名片函数(内接修改函数)

def xiugai(c,d):         修改名片函数

2.3接口设计

表2.3:函数列表

函数名    函数格式  //即函数首部    函数功能

card    def card():    新增名片

show    def show():     显示全部名片

search    def search():    搜索名片

deal_card    def deal_card(find_d):    删除名片

xiugai    def xiugai(c,d):      修改名片

2.4运行界面设计

运行页面以简便友好的初衷设计,让用户可以轻松使用。

第三章详细设计

3.1添加模块设计

使用 字典 记录 每一张名片 的详细信息

使用 列表 统一记录保存所有的 名片字典

根据步骤实现代码:

def card():

print('新增名片')

name = input('姓名:')

phone = input('电话:')

qq = input('qq:')

email = input('邮箱:')

card_d = {'name': name, 'phone': phone,'qq': qq,'email': email}

card_list.append(card_d)

print(card_d)

print('成功添加%s的名片' % card_d['name'])

3.2查询模块设计

提示用户要搜索的姓名

根据用户输入的姓名遍历列表

搜索到指定的名片后,再执行后续的操作

代码实现

def search():

print('搜索名片')

find_name = input('请输入要搜索的姓名:')

for card_d in card_list:

if card_d['name'] == find_name:

print('姓名\t电话\tQQ\t邮箱')

print('%s\t%s\t%s\t%s' % (card_d['name'],card_d['phone'],card_d['qq'],card_d['email']))

deal_card(card_d)

break

else:

print('没有找%s的名片' % find_name)

第五章实训总结

一周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情的方法和技巧。在设计过程中,和同学们相互探讨,相互学习,相互监督。我学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世,这次课程设计对我来说受益良多。

课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.“千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。我这次设计的科目是名片管理系统。

通过这次设计,我在多方面都有所提高。

很多程序在结构上是独立的,但是本此设计的程序功能不是零散的,它有一个连接是的程序是一个整体对以后的学习充满了信心和期待通过这次的课程设计,更是让我深刻认识到自己在学习中的不足,同时也找到了克服这些不足的方法,这也是一笔很大的资源。在以后的时间中,我们应该利用更多的时间去上机实验,加强自学的能力,多编写程序,相信不久后我们的编程能力都会有很大的提高能设计出更多的更有创新的作品。

Python 项目管理 ProjectMan

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《MXNet深度学习实战》—3.2 Symbol
下一篇:OBS生命周期管理简介
相关文章