【python基礎】用字典做一個小型的查詢數據庫
阿新 • • 發佈:2018-08-29
import oot 字符 odin 參數錯誤 err 輸出 put 異常 例子來源於《python基礎教程》第三版,57p
該例子主要是使用字典的方式,實現一個小型的數據庫,通過查詢字典的鍵值來獲取用戶的信息。
本人修改了部分代碼。
#!/usr/bin/python3 -*- coding:utf-8 -*- # 使用字典構建一個簡單的數據庫 #導入模塊,主要為了做異常退出 import os # 構建people字典,用來存儲用戶信息 people = { ‘Ailce‘:{ ‘phone‘: ‘2341‘, ‘addr‘: ‘Foo drive 23‘ }, ‘Beth‘: { ‘phone‘: ‘9102‘, ‘addr‘: ‘Bar street 42‘ }, ‘Cecil‘: { ‘phone‘: ‘3158‘, ‘addr‘: ‘Baz avenue 90‘ } } # 構建一個輸出字典,主要用於後面的輸出,也可以不構建,到print的時間將字符寫上去即可 labels = { ‘phone‘: ‘phone number‘, ‘addr‘: ‘address‘ } # 提示用戶輸入名字 name = input(‘Name:‘) request = input(‘Phone number(p) or address(a)?‘) # 判斷用戶數據的查詢信息,是地址還是電話,這裏我做了修改。 if request == ‘p‘: key = ‘phone‘ elif request == ‘a‘: key = ‘addr‘ else: print(‘Your Input Options Error.‘) os._exit(1) #異常退出,不會執行後面的代碼。 # 判斷用戶輸入的名字是否在字典中,這裏我做了修改。 if name in people: print("{}‘s {} is {}.".format(name,labels[key],people[name][key])) else: print("Sorry.{}‘s {} is not existe".format(name,labels[key]))
運行結果:
# 用戶不存在的情況下。 [root@python dict]# python3 phone.py Name:Peng Phone number(p) or address(a)?a Sorry.Peng‘s address is not existe #用戶存在的情況下 [root@python dict]# python3 phone.py Name:Cecil Phone number(p) or address(a)?p Cecil‘s phone number is 3158. [root@python dict]# python3 phone.py Name:Cecil Phone number(p) or address(a)?a Cecil‘s address is Baz avenue 90. [root@python dict]# # 查詢的參數錯誤的情況下 [root@python dict]# python3 phone.py Name:Peng Phone number(p) or address(a)?b Your Input Options Error.
【python基礎】用字典做一個小型的查詢數據庫