該程序包含菜單模塊,具有添加、修改、刪除、指定查詢名片信息的功能。
核心:主要是運用了Python字典嵌套列表的數據處理特性,像append添加元素就好比進棧;其數據結構都已經封裝在各種基本語法上,所以相比用C指針逐個構建來完成同樣的功能操作起來簡單得多。
代碼:
# coding = gbk
def display_menu():
print("——"*10)
print(" GF名片管理系統1.0")
print("1. 添加名片")
print("2. 刪除名片")
print("3. 修改名片")
print("4. 查詢名片")
print("5. 獲取所有名片信息")
print("6. 退出系統")
print("——"*10)
#獲取用戶輸入的信息
def get_choice():
selected_key = input("請輸入選擇的序號:")
return int(selected_key)
#添加名片
def add_info():
name_list = {}
new_name = input("請輸入姓名:")
name_list["姓名"] = new_name
new_sex = input("請輸入性別:")
name_list["性別"] = new_sex
new_age = input("請輸入年齡:")
name_list["年齡"] = new_age
list.append(name_list)
#刪除名片
def del_info():
name = input("您想要刪除的人名:")
for ii in range(0, len(list)):
if list[ii]["姓名"] == name:
del list[ii]
break # 若不加break,del函數執行後,index則會在下一次for循環後溢出
#修改名片
def modi_info():
name = input("您想要修改的人名:")
for kk in range(0, len(list)):
if list[kk]["姓名"] == name:
print (list[kk])
key = int(input("1.修改姓名 2. 修改性別 3. 修改年齡 4.修改全部, 請輸入數字:"))
if key == 1:
list[kk]["姓名"] = input("請輸入新的名字:")
elif key == 2:
list[kk]["性別"] = input("請輸入新的性別:")
elif key == 3:
list[kk]["年齡"] = input("請輸入新的年齡:")
elif key == 4:
del list[kk]
add_info()
else:
print("輸入有誤,請重新輸入")
#查詢名片
def find_info():
name = input("您想要查詢的人名:")
for num in range(0, len(list)):
if list[num]["姓名"] == name:
print (list[num])
#查看所有名片的信息
def print_info():
print("——"*10)
k=1
for info in list:
print("名片編號", k, ":", info)
k += 1
print("——"*10)
i = 0
list = []
while i < 1:
display_menu()
key = get_choice()
if key == 1:
add_info()
elif key == 2:
del_info()
elif key == 3:
modi_info()
elif key == 4:
find_info()
elif key == 5:
print_info()
elif key == 6:
i = 2
print("已退出GF名片系統1.0")
else:
print("輸入有誤,請重新輸入:")
運行結果: