字典是python中惟一內建的map類型python
key能夠爲任何不可改變的類型,包括內置類型,或者元組,字符串安全
phonebook={'alice': '2341', 'beth':'9102'} 函數
鍵值對列表作參數學習
>>> items=[("name", "Gumby"), ("age", 42)] >>> dict(items) {'age': 42, 'name': 'Gumby'}
鍵值對參數spa
>>> d = dict(name="Gumby", age=42) >>> d {'age': 42, 'name': 'Gumby'}
基本字典操做code
格式化字符串 %(key)type索引
>>> phonebook={"beth":"9102", "alice":"2341"} >>> print "%(beth)s" % phonebook 9102 >>>
>>> x={"username":"admin", "machines":["foo", "bar", "baz"]} >>> x {'username': 'admin', 'machines': ['foo', 'bar', 'baz']} >>> y=x.copy() >>> y {'username': 'admin', 'machines': ['foo', 'bar', 'baz']} >>> y["username"]="mlh" >>> y["machines"].remove("bar") >>> y {'username': 'mlh', 'machines': ['foo', 'baz']} >>> x {'username': 'admin', 'machines': ['foo', 'baz']} >>> import copy >>> z=copy.deepcopy(x) >>> z {'username': 'admin', 'machines': ['foo', 'baz']} >>> z["machines"].remove("foo") >>> z {'username': 'admin', 'machines': ['baz']} >>> x {'username': 'admin', 'machines': ['foo', 'baz']} >>>
fromkeys:使用給定的key創建新字典,每一個key對應的默認值爲Nonerem
>>> {}.fromkeys(["name", "age"]) {'age': None, 'name': None} >>> >>> dict.fromkeys(["name", "age"], "(unkonwn)") {'age': '(unkonwn)', 'name': '(unkonwn)'} >>>
get 安全訪問字典,當key不存在的時候返回None字符串
>>> a={} >>> a['a'] Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'a' >>> print a.get("a") None >>>
has_key 返回key是否存在get
items和iteritems,以列表形式返回字典中的項,列表中的元素爲字典中的項,iteritems會返回一個迭代器
keys和iterkeys,以列表形式返回字典中key
pop,獲取給定key的值,而後從字典中移除
popitem,彈出一個項
setdefault,獲取給定key的值,若是沒有則設置並返回默認值
update 參數字典中項會被添加到舊字典中,如有相同的key則進行覆蓋
values和itervalues 以列表的形式返回字典中值