溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

【python基礎(chǔ)】用字典做一個小型的查詢數(shù)據(jù)庫

發(fā)布時間:2020-07-11 01:51:52 來源:網(wǎng)絡(luò) 閱讀:1287 作者:運維少年 欄目:編程語言

例子來源于《python基礎(chǔ)教程》第三版,57p

該例子主要是使用字典的方式,實現(xiàn)一個小型的數(shù)據(jù)庫,通過查詢字典的鍵值來獲取用戶的信息。

本人修改了部分代碼。

#!/usr/bin/python3
-*- coding:utf-8 -*-
# 使用字典構(gòu)建一個簡單的數(shù)據(jù)庫

#導(dǎo)入模塊,主要為了做異常退出
import os   
# 構(gòu)建people字典,用來存儲用戶信息
people = {

        'Ailce':{
                'phone': '2341',
                'addr': 'Foo drive 23'

        },

        'Beth': {

                'phone': '9102',
                'addr': 'Bar street 42'
        },

        'Cecil': {
                'phone': '3158',
                'addr': 'Baz avenue 90'
        }
}

# 構(gòu)建一個輸出字典,主要用于后面的輸出,也可以不構(gòu)建,到print的時間將字符寫上去即可
labels = {
        'phone': 'phone number',
        'addr': 'address'

}

# 提示用戶輸入名字
name = input('Name:')

request = input('Phone number(p) or address(a)?')

# 判斷用戶數(shù)據(jù)的查詢信息,是地址還是電話,這里我做了修改。
if request == 'p':
        key = 'phone'
elif request == 'a':
        key = 'addr'
else:
        print('Your Input Options Error.')
                os._exit(1)        #異常退出,不會執(zhí)行后面的代碼。

# 判斷用戶輸入的名字是否在字典中,這里我做了修改。
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]))

運行結(jié)果:

# 用戶不存在的情況下。
[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]# 

# 查詢的參數(shù)錯誤的情況下
[root@python dict]# python3 phone.py 
Name:Peng
Phone number(p) or address(a)?b
Your Input Options Error.
向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI