本文實例為大家分享了python實現(xiàn)名片管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
功能需求
- 用戶輸入數(shù)字選擇要進行的操作
- 添加名片
- 刪除名片
- 修改名片
- 查詢名片
- 顯示所有名片
- 退出系統(tǒng)
缺點(待改進)
數(shù)據(jù)未保存到后臺,添加的數(shù)據(jù)僅限當次運行程序時使用
話不多說,上代碼!
主程序
# coding=utf8
from method import *
# 導入定時器是為了方便觀察每次操作的結(jié)果
from time import sleep
cards = []
# 讓這個程序無限循環(huán),直到用戶想要其終止
while True:
sleep(1)
menu()
ope_num = input('請輸入要進行的操作(1-6): ')
if ope_num == '1':
addinfo(cards)
elif ope_num == '2':
delinfo(cards)
elif ope_num == '3':
updateinfo(cards)
elif ope_num == '4':
searchinfo(cards)
elif ope_num == '5':
showinfo(cards)
elif ope_num == '6':
sure = input('你確定要退出系統(tǒng)嗎(YES/NO)')
if sure.upper() == 'YES':
break
else:
print('輸入錯誤,請重新輸入?。。。〝?shù)字1-6)')
函數(shù)文件
# 定義一個menu方法
def menu():
print('------------------\n'
'\t名片管理系統(tǒng)\n'
'1:添加名片\n'
'2:刪除名片\n'
'3:修改名片\n'
'4:查詢名片\n'
'5:顯示所有名片\n'
'6:退出系統(tǒng)\n'
'------------------')
# 添加名片
def addinfo(lists):
# 定義一個字典,存放這個名片的信息
info = {}
# 獲取姓名
def getname():
name = input('請輸入姓名: ')
# 判斷姓名是否由 數(shù)字、字母、數(shù)字和字母 組成,即:不能包含標點符號和空格,不能為空
# 如果不符合要求,提示檢查,并重新輸入
# 一直提示用戶輸入,直到符合要求
while name.isalnum() != True:
print('請檢查輸入?。?! (不能包含標點符號和空格,不能為空) ')
name = input('請輸入姓名: ')
return name
# 獲取手機號
def getphone():
phone = input('請輸入手機號: ')
# 判斷手機號是否由 11位數(shù)字 組成
# 如果不符合要求,提示檢查,并重新輸入
while (len(phone) != 11) or (phone.isdigit() != True):
print('請檢查輸入?。?! (由11位純數(shù)字組成,不能為空) ')
phone = input('請輸入手機號: ')
return phone
# 獲取QQ號
def getqq():
qq = input('請輸入QQ號: ')
# 判斷QQ號是否由 5-10位數(shù)字 組成
# 如果不符合要求,提示檢查,并重新輸入
while ((len(qq) 5) or (len(qq) > 10)) or (qq.isdigit() != True):
print('請檢查輸入?。。?(由5-10位純數(shù)字組成,不能為空) ')
qq = input('請輸入QQ號: ')
return qq
# 如果該名片的序號為,列表長度+1
info['num'] = len(lists) + 1
# 通過調(diào)用其他函數(shù)獲取對應信息
info['name'] = getname()
info['phone'] = getphone()
info['qq'] = getqq()
# 將該字典存入名片列表中
lists.append(info)
print('添加成功!')
showinfo(lists)
# 輸出所有名片列表
def showinfo(lists):
print('序號\t姓名\t\t手機號\t\tQQ號'.ljust(30))
for lis in lists:
for value in lis.values():
print(value, end='\t')
print('\n')
# 刪除名片
def delinfo(lists):
del_name = input('請輸入您需要刪除名片的姓名: ')
flag = True
for lis in lists:
if lis['name'] == del_name:
lists.remove(lis)
print('刪除成功!')
showinfo(lists)
flag = False
break
if flag == True:
print('名片不存在?。。?)
# 修改名片
def updateinfo(lists):
upd_name = input('請輸入您需要修改名片的姓名: ')
flag = True
for lis in lists:
if lis['name'] == upd_name:
lis['name']=input('請輸入新姓名: ')
lis['phone']=input('請輸入新手機號: ')
lis['qq']=input('請輸入新QQ號: ')
print('修改成功!')
showinfo(lists)
flag = False
break
if flag == True:
print('名片不存在?。?!')
# 查詢名片
def searchinfo(lists):
se_name = input('請輸入您需要查詢的姓名: ')
flag = True
for lis in lists:
if lis['name'] == se_name:
print('序號\t姓名\t\t手機號\t\tQQ號'.ljust(30))
for value in lis.values():
print(value, end='\t')
print('\n')
flag = False
break
if flag == True:
print('名片不存在!??!')
執(zhí)行結(jié)果
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- 教你用python實現(xiàn)一個無界面的小型圖書管理系統(tǒng)
- python實現(xiàn)學生管理系統(tǒng)源碼
- 基于python實現(xiàn)銀行管理系統(tǒng)
- 基于python實現(xiàn)圖書管理系統(tǒng)
- Python實現(xiàn)學生管理系統(tǒng)的代碼(JSON模塊)
- python實現(xiàn)學生通訊錄管理系統(tǒng)
- 使用python實現(xiàn)學生信息管理系統(tǒng)
- 利用Python實現(xiàn)學生信息管理系統(tǒng)的完整實例
- 教你用Python實現(xiàn)簡易版學生信息管理系統(tǒng)(含源碼)