python實現乙個函式版的名片管理系統過程解析

2022-10-04 16:21:12 字數 2651 閱讀 9057

本案例使用了自定義函式以及對字串的常見操作、判斷語句和迴圈語句等知識。

要求必須使用自定義函式,完成對程式的模組化。

名片資訊至少包括:姓名、**、住址。

必須完成的功能:增、刪、改、查、退出。

分析首先呢,我們應該先定義乙個全域性變數,用於儲存所有的名片資訊。

cards = [, ] # 定義乙個的列表用於存放名片資訊,預設裡面有張三和李四的資訊,方便以後除錯用。

完成增加,刪除,修改,查詢等相關操作的函式(cards是可變型別的全域性變數,故在函式中不用加global也可呼叫),注意:如定義變數 a: int = 0, int只是單純的提示開發人員它的型別是int,方便除錯。

def print_menu():

""""完成列印功能選單"""

print("=" * 20)

print(" 名片管理系統")

print(" 程式設計客棧1:新增乙個名片")

print(" 2:刪除乙個名片")

print(" 3:修改乙個名片")

print(" 4:查詢乙個名片")

print(" 5:顯示所有的名片")

print(" 6:退出")

print("=" * 20)

def add_card():

"""完成新增乙個名片的功能"""

new_infor: dict =

cards.append(new_infor)

print("新增成功!")

def delete_card():

del_name = input("請輸入要刪除的名字:")

for person in cards:

if del_name == person["name"]:

cards.remove(person)

print("刪除成功!")

break

else:

print("找不到要刪除的人!")

def update_card():

name: str = input("請輸入要修改的名字(只能通過名字來修改**和住址):")

for person in cards:

if name == person["name"]:

phone = input("請輸入新的的**(直接回車則不修改):")

address = input("請輸入新的的位址(直接回車則不修改):")

if phone:

person["phone"] = phone

if address:

person["address"] = address

print("修改成功")

break

els程式設計客棧e:

print("找不到要修改的人!")

def find_card():

"""用來查詢乙個名片"""

find_name: str = input("請輸入要查詢的名字(支援模糊查詢):")

flag: int = 1

for fnpoxtemp in cards:

# 遍歷名片中的所有名字,判斷要查詢的名字是否存在,不存在則列印查無此人

if temp["name"].find(find_name) != -1:

print("%s\t%s\t%s" % (temp["name"], temp["phone"], temp["address"]))

flag = 0

if flag:

print("查無此人")

def show_all():

print("姓名\t**\t住址")

for temp in cards:

print("%s\t%s\t%s" % (temp["name"], temp["phone"], temp["address"]))

最後完成主函式的功能,並呼叫主函式

def main():

"www.cppcns.com"""完成對整個程式的控制"""

# 列印功能提示

print_menu()

while true:

# 獲取使用者的選擇

num: str = input("請輸入功能序號:")

# 判斷輸入的是否為數字

if not num.isdigit():

print("請輸入數字!")

continue

# 轉換成數字型別

num: int = int(num)

# 增if num == 1:

add_card()

# 刪elif num == 2:

delete_card()

# 改elif num == 3:

update_card()

# 查elif num == 4:

find_card()

elif num == 5:

show_all()

elif num == 6:

break

else:

print("請按號輸入!")

print()

# 呼叫主函式

if __name__ == '__main__':

main()

本文標題: python實現乙個函式版的名片管理系統過程解析

本文位址:

python案例 實現乙個函式版的名片管理系統

本案例使用了自定義函式以及對字串的常見操作 判斷語句和迴圈語句等知識。必須使用自定義函式,完成對程式的模組化。名片資訊至少包括 姓名 住址。必須完成的功能 增 刪 改 查 退出。首先呢,我們應該先定義乙個全域性變數,用於儲存所有的名片資訊。cards 定義乙個的列表用於存放名片資訊,預設裡面有張三和...

乙個ntohs函式的實現

眾所周知ntohs用來將本機位元組序列轉換為網路位元組序列,如何寫乙個高效能的實現呢?先寫乙個能正常工作的 如下 執行後與系統自帶的對比效能,執行時間輸出如下 效能相差很多呀,看來得用彙編寫個改進版本 執行結果如下 效能有所改進,但與系統實現比較依然很慢,並沒有顯著改進效能,看來還得改進,應該是pr...

實現乙個Memcpy函式

需要考慮記憶體重疊的情況 includeusing namespace std void memcpy void dst,const void src,size t len void ret dst if dst src else return ret int main 那麼為什麼還要考慮重寫mem...