標籤:描述 標籤 items src 棋盤 tle 格式 技術 組成
20180829--https://www.cnblogs.com/fnng/archive/2013/04/20/3032563.html
字典
字典的使用
現實中的欄位及在Python中的欄位都進行了構建,從而可以輕鬆查到某個特定的詞語(鍵),從而找到它的意義(值)。
某些情況下,字典比列表更加適用:
- 表徵遊戲棋盤的狀態,每個鍵都是由座標值組成的元組
- 隱藏檔修改次數,用檔案名稱作為鍵
- 數字電話/地址本
建立一個人名列表,以及四位的分機號碼
>>> names = [‘zhangsan‘,‘lisi‘,‘wangwu‘,‘sunliu‘]>>> numbers = [‘2313‘,‘9102‘,‘3158‘,‘4326‘]#通過下下方法查詢>>> numbers[names.index(‘zhangsan‘)]‘2313‘
建立和使用字典
字典可以通過下面方式建立
>>> phonebook = {‘zhangsai‘:‘2313‘,‘lisi‘:‘9102‘,‘wangwu‘:‘3158‘}
字典由多個鍵及與其對應的值構成,在上例中,名字是鍵,電話號碼是值。
dict函數
可以用dict 函數,通過其他映射(比如其他字典)或(鍵,值)這樣的序列對建立字典。
>>> items = [(‘name‘,‘gumby‘),(‘age‘,42)]>>> d = dict(items)>>> d{‘age‘: 42, ‘name‘: ‘gumby‘}>>> d[‘name‘]‘gumby‘
dict函數也可以通過關鍵字參數來建立字典,如下例所示:
>>> d = dict(name =‘gumby‘, age=42)>>> d{‘age‘: 42, ‘name‘: ‘gumby‘}
格式化輸出
%s 列印字串
#簡單資料庫
#使用人名作為鍵的字典,每個人用另一個字典表示,其鍵‘phone‘和‘addr‘分別表示他們的電話號碼和地址。
people = {
‘zhangsan‘:{
‘phone‘:‘13012341234‘,
‘addr‘:‘tianfusanjie‘
},
‘lisi‘:{
‘phone‘:‘13112345678‘,
‘addr‘:‘tianfusijie‘
},
‘wangwu‘:{
‘phone‘:‘15612341234‘,
‘addr‘:‘tianfuwujie‘
}
}
#針對電話號碼和地址使用的描述性標籤,會在列印輸出的時候用到
labels = {
‘phone‘:‘phone number‘,
‘addr‘:‘address‘
}
name = input(‘Name:‘)
#尋找電話號碼還是地址,使用正確的鍵:
request = input(‘phone number(p) or address(a)‘)
#使用正確的鍵:
if request == ‘p‘:key = ‘phone‘
if request == ‘a‘:key = ‘addr‘
#如果名字是字典中的有效鍵才列印資訊:
if name in people : print("%s‘s %s is %s." %(name, labels[key],people[name][key]))
python學習記錄(五)