D.clear() -> None
说明:删除字典中所有的元素,一个变所有的都变
D.copy() -> dict
说明:复制一个字典的引用(浅复制),深拷贝需用独立的copy模块的deepcopy
D.get(k[,d]) -> object
说明:对于字典D中的k返回对应的value,如果字典中不存在此键,则返回default的值(注意default的值为None)
# -*- coding: utf-8 -*- """ # # Authors: limanman # OsChina: http://my.oschina.net/pydevops/ # Purpose: # """ import pprint def main(): """Main function.""" cur_level = 1 area_dict = { 'huadong': { 'shandong': { 'jinan': [ u'历下区', u'市中区', ], 'qingdao': [ u'市南区', u'市北区', ] }, 'zhejiang': { 'hangzhou': [ u'下城区', u'江干区', ], 'wenzhou': [ u'龙湾区', u'瓯海区', ], }, } } while True: # 网页中多级菜单的下拉就相当于输入 # -------------------------------------------------------- level_str = '-> '*cur_level list_or_tuple = False if isinstance(area_dict, dict): key_enum = enumerate(area_dict.keys()) elif isinstance(area_dict, (list, tuple)): list_or_tuple = True key_enum = enumerate(area_dict) else: print '%s %s %s' % (level_str, 0, area_dict) break for area_key, area_val in key_enum: print '%s %s %s' % (level_str, area_key, area_val) cur_choice = raw_input('please input your choice: ').strip() if cur_choice.isdigit(): cur_choice = int(cur_choice) else: continue if list_or_tuple: key_value = area_dict[cur_choice] else: key_name = area_dict.keys()[cur_choice] key_value = area_dict[key_name] area_dict = key_value cur_level += 1 # -------------------------------------------------------- if __name__ == '__main__': main()
D.has_key(k) -> boolean
说明:如果键在字典中存在返回True,否则返回False,官方推荐用in/ not in来替代之
D.items() -> tuple
说明:返回一个包含字典中的键,值对元组的列表
D.iteritems() -> iterator
说明:返回一个包含字典中的键,值对元组的迭代
D.iterkeys() -> iterator
说明:返回一个包含字典的键的迭代序列
D.itervalues() -> itervalues
说明:返回一个包含字典的值的迭代序列
D.keys() -> list
说明:返回一个包含字典的键的列表
D.values() -> list
说明:返回一个包含字典的值的列表
D.pop(k[,d]) -> object
说明:从字典中弹出一个键值对,如果键不存在则返回默认default值
D.popitem() -> tuple
说明:从字典中弹出一个键值对,参数必须是键值对,如果不存在会抛出一异常
D.setdefault(k[,d]) -> None
说明:如果字典中不存在key键,则默认设置一个key对应设置的default值,如果存在则返回对应的键,它返回的是default
D.update(dict) -> None
说明:接受另一个字典对象或是一个键值对(长度为二的元组或是其它的iterables),如果指定关键字参数,然后用这些键值对更新字典