#!/usr/bin/python
#Python3 字典
#字典是支持無限極嵌套的
citys={
'北京':{
'朝陽':['國貿','CBD','天階','我愛我家','連接地產'],
'海淀':['圓明園','蘇州街','中關村','北京大學'],
'昌平':['沙河','南口','小湯山',],
'懷柔':['桃花','梅花','大山'],
'密雲':['密雲A','密雲B','密雲C']
},
'河北':{
'石家莊':['石家莊A','石家莊B','石家莊C','石家莊D','石家莊E'],
'張家口':['張家口A','張家口B','張家口C'],
'承德':['承德A','承德B','承德C','承德D']
}
}
for i in citys['北京']:
print(i)
'''
輸出結果爲:
朝陽
海淀
昌平
懷柔
密雲
'''
for i in citys["北京"]["海淀"]:
print(i)
'''
輸出結果爲:
圓明園
蘇州街
中關村
北京大學
'''
'''
字典值能夠是任何的 python 對象,既能夠是標準的對象,也能夠是用戶定義的,但鍵不行。
1)不容許同一個鍵出現兩次。建立時若是同一個鍵被賦值兩次,後一個值會被記住
2)鍵必須不可變,因此能夠用數字,字符串或元組充當,而用列表就不行
'''
#字典的鍵值都是"只讀"的,因此不能對鍵和值分別進行初始化
dic = {}
#dic.keys = (1,2,3,4,5,6)
'''
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'dict' object attribute 'keys' is read-only
'''
#dic.values = ("a","b","c","d","e","f")
'''
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'dict' object attribute 'values' is read-only
'''
'''
字典的每一個鍵值(key=>value)對用冒號(:)分割,每一個對之間用逗號(,)分割,整個字典包括在花括號({})中.
鍵必須是惟一的,但值則沒必要。
值能夠取任何數據類型,但鍵必須是不可變的,如字符串,數字或元組。
'''
dict1= { 'abc': 123, 98.6: 37 };
print(type(dict1))
print(dict1[98.6])
#若是用字典裏沒有的鍵訪問數據,會輸出錯誤
#向字典添加新內容的方法是增長新的鍵/值對
dict1["name"] = "hejing"
print(dict1)
#能刪單一的元素也能清空字典,清空只需一項操做。刪除一個字典用del命令
del dict1["abc"] # 刪除鍵 'abc'
dict1.clear() # 清空字典
print("清空字典後字典爲", end = ":")
print(dict1)
del dict1 # 刪除字典
print("刪除字典後字典爲:")
#print(dict1)
#NameError: name 'dict1' is not definedpython