字典和列表结合应用:名片管理系统

Posted smilehang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字典和列表结合应用:名片管理系统相关的知识,希望对你有一定的参考价值。

依旧要先说明的是字典的增删改查:

定义一个字典:

dict = {key1:value,key2:value}

 

增: dic[key3] = xxx   #若键不存在,将这条键值存入字典。

删: del dict[key]      #删除这条键值关系。

改: dict[key] = xxxx     #更改key对应的value,前提是key存在的情况下。

查: dict[key]         #若key 不存在会报错。

   dict.get(key)      #若key存在返回value,若key不存在返回为空不报错(推荐使用)

 

字典和列表结合操作的典例:

相关链接:姓名管理系统

我这个写的稍有繁杂,希望多提建议。

思想就是将每个人的名片包含的信息(姓名,手机号,QQ,地址)存到每个字典里,然后将每个字典存到列表中。

 1 #名片管理系统V1.01,将用户信息以字典存储,放入列表
 2 #打印目录,增删改查(1,2,3,4)退出系统0
 3 #获取用户所选择的功能
 4 cards = []
 5 #功能实现
 6 while 1:
 7     print("名片管理系统-V1.01")
 8     print(**20)
 9     print("1.添加新名片")
10     print("2.删除一个名片")
11     print("3.修改名片信息")
12     print("4.查找名片是否存在")
13     print("5.查看名片信息")
14     print("0.退出系统")
15     print(**20)
16     user_option = int(input("请输入您的选择:"))
17     if user_option == 1:    #
18         new_name = input("请输入您的姓名:")
19         new_phoneNum = input("请输入您的手机号码:")
20         new_qq = input("请输入您的QQ:")
21         new_add = input("请输入您的地址:")
22         new_card = {}
23         new_card[name] = new_name
24         new_card[phoneNum] = new_phoneNum
25         new_card[QQ] = new_qq
26         new_card[add] = new_add
27         cards.append(new_card)
28     elif user_option == 2:  #
29         del_name = input("请输入删除名片的姓名:")
30         index = 0
31         flag = 0
32         for card in cards:
33             if card[name] == del_name:
34                 del cards[index]
35                 flag = 1
36                 break
37             index += 1
38         if flag == 0:
39             print("很抱歉,查无此人无法删除!")
40     elif user_option == 3:  #
41         correct_name = input("请输入修改名片的姓名:")
42         index = 0
43         flag = 0
44         for card in cards:
45             if card[name] == correct_name:
46                 flag = 1
47                 break
48             index += 1
49         if flag == 0:
50             print("查无此人,无法修改!")
51         print("1.修改姓名")
52         print("2.修改号码")
53         print("3.修改QQ")
54         print("4.修改住址")
55         correct_option = int(input("请输入您的修改选项:"))
56         correct_content = input("请输入您的修改内容:")
57         if correct_option ==  1:
58             cards[index][name] = correct_content
59         elif correct_option ==  2:
60             cards[index][phoneNum] = correct_content
61         elif correct_option ==  3:
62             cards[index][QQ] = correct_content
63         elif correct_option == 4:
64             cards[index][add] = correct_content
65         else:
66             print("修改选项不正确请重新选择!")
67     elif user_option == 4:  #
68         del_name = input("请输入查找名片的姓名:")
69         index = 0
70         flag = 0
71         for card in cards:
72             if card[name] == del_name:
73                 print("姓名\\t电话\\tQQ\\t住址")
74                 print("%s\\t%s\\t%s\\t%s"%(cards[index][name],cards[index][phoneNum],cards[index][QQ],cards[index][add]))
75                 flag = 1
76                 break
77             index += 1
78         if flag == 0:
79             print("很抱歉,查无此人!")
80 
81     elif user_option == 5:  #
82         for card in cards:
83             print("姓名\\t电话\\tQQ\\t住址")
84             print("%s\\t%s\\t%s\\t%s"%(card[name],card[phoneNum],card[QQ],card[add]))
85     elif user_option == 0:  #退出系统
86         break
87     else:
88         print("输入错误,请重新输入:")  

 

以上是关于字典和列表结合应用:名片管理系统的主要内容,如果未能解决你的问题,请参考以下文章

Python-列表嵌套字典-名片管理系统(适合刚学习完字典和列表的同学练手)

day_11 py 名片管理系统

Python 列表字典制作名册管理

python小练习1 名片管理器

Python基础——名片管理系统(实现了数据简单的存储修改删除查看等)

python---01.名片管理系统