python名片管理系统2.0_Python3实现简单的名片管理系统

原标题:Python3实现简单的名片管理系统

基于Python3下的综合名片管理系统,这是一个用 Python 开发的可视化的名片管理系统,主要实现名片的添加、删除、修改三大功能。效果图如下所示

需要实现的功能:

1.启动终端执行程序后,出现如下界面(新增,显示全部和查询)

9d2c81a2f367493fbe2bb60077047bf1.jpeg

启动界面

2.通过相应的选项可以实现相应的功能

1c849e54f34e49f7a50f3dfff802dd16.jpeg

新增名片

90ca670f76834eb0b5501e35b48ad23e.png

显示全部名片

3.选择查找用户后,如果找到用户,提示用户进行修改或者删除操作

13884b311fa44751997b236018db09e3.jpeg

主要知识点:

1.分支结构,循环结构的使用

2.主函数搭建框架,主要功能写在另一模块中

3.每一个函数代码不宜太长,如果有子功能可以再封装成一个函数调用

4.列表,字典变量的应用

5.注释的技巧:函数添加文档注释,标记参数和返回值,以便阅读和调用时查看

待完成的功能可以使用 #TODU 标注。

主程序:

#! /usr/bin/python3

#导入card_tools模块

importcard_tools

whileTrue:

#显示功能菜单

card_tools.show_menu()

#获取用户输入内容

user_input = input( "请选择您要进行的操作:")

#判断用户输入内容

ifuser_input in[ "1", "2", "3"]:

ifuser_input == "1":

card_tools.new_cards()

elifuser_input == "2":

card_tools.show_all()

else:

card_tools.search_card()

elifuser_input == "0":

break

else:

print( "您的操作有误0.0,请输入0-3的数字")

#

导入的模块:

defshow_menu():

"""

显示功能菜单函数

"""

print()

print( "*"* 50)

print( "欢迎来到名片管理系统-.-")

print( "-"* 50)

print( "t[1] 新增名片")

print( "t[2] 显示全部")

print( "t[3] 查询名片")

print( "t[0] 退出系统")

print( "*"* 50)

defmake_tab():

"""

打印表头

"""

print( "="* 50)

print( "姓名tt年龄tt电话tt邮箱")

print( "-"* 50)

# 创建列表用于保存键值对

#不能放到函数里面,不然每次新建名片内容都被覆盖了

card_list = []

defnew_cards():

"""

定义一个新建名片的函数,获取到用户输入的内容后,放入一个键值对当中,然后把键值对放入一个列表中

"""

# 获取用户输入内容并用键值对保存

name =input( "请输入姓名:")

age = input( "请输入年龄:")

tel = input( "请输入电话:")

email = input( "请输入邮箱:")

user_dict = { "name":name,

"age":age,

"tel":tel,

"email":email}

#把键值对放入列表中

card_list.append(user_dict)

defshow_all():

"""

定义一个显示全部内容的函数,如果列表有信息就遍历,没信息提示用户输入

"""

iflen(card_list)!= 0:

make_tab()

# 遍历列表得到用户信息字典

foruser_dict incard_list:

# 得到用户各项信息的值 (和表头对齐)

# for key in ("name","age","tel","email"):

# print("%stt" % user_dict[key] ,end="")

print( "%stt"% user_dict[ "name"],end= "")

print( "%stt"% user_dict[ "age"],end= "")

print( "%st"% user_dict[ "tel"],end= "")

print( "%st"% user_dict[ "email"],end= "")

print()

print( "="* 50)

else:

print( "当前没有任何信息,请添加新增名片")

#查询名片

defsearch_card():

"""

遍历card_list得到用户键值对,再把键值对中的name的值与用户

输入内容作比较,如果匹配到了则返回用户信息,如果没匹配到则

提示用户没搜索到

"""

find_name = input( "请输入您要查找的姓名:")

forkey_value incard_list:

ifkey_value[ "name"] == find_name:

make_tab()

# for key in ("name","age","tel","email"):

# print("%stt" % key_value[key] ,end="")

print( "%stt"% key_value[ "name"],end= "")

print( "%stt"% key_value[ "age"],end= "")

print( "%st"% key_value[ "tel"],end= "")

print( "%st"% key_value[ "email"],end= "")

print()

print( "="* 50)

# 处理名片(修改或者删除)

deal_cards(key_value)

break

else:

print( "您所查找的名片不存在!")

defdeal_cards(key_value):

"""

找到用户后,对名片进行修改或者删除操作

:key_value: 在查找函数中,查找到的用户信息字典

"""

user_input_str = input( "请选择您要进行的操作: [1]修改名片 [2]删除名片 [0]返回上一层")

ifuser_input_str == "1":

#修改名片

# key_value["name"]= input("姓名:")

# key_value["age"]= input("年龄:")

# key_value["email"]= input("邮箱:")

# key_value["tel"]= input("电话:")

key_value[ "name"] = user_input_info(key_value[ "name"],input( "姓名"))

key_value[ "age"] = user_input_info(key_value[ "age"],input( "年龄"))

key_value[ "tel"] = user_input_info(key_value[ "tel"],input( "电话"))

key_value[ "email"] = user_input_info(key_value[ "email"],input( "邮箱"))

print( "修改成功!")

elifuser_input_str == "2":

#删除名片

card_list.remove(key_value)

print( "删除成功!")

defuser_input_info(dict_value,input_value):

"""

判断用户的输入的值,如果不是空则修改原值。否则返回原值

:param dict_value: 字典中原有的值

:param input_value: 用户输入的用于修改的值

:return: 修改后的值

"""

iflen(input_value) == 0:

returndict_value

else:

returninput_value

更多Python相关信息见Python 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=17

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址:https://www.linuxidc.com/Linux/2019-06/158940.htm返回搜狐,查看更多

责任编辑:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值