python 字典

来源:互联网 发布:mac在线安装系统 编辑:程序博客网 时间:2024/06/07 05:49

字典

字典key:value 键值对 (无序)
字典是另一种可变容器模型,且可存储任意类型对象
键是唯一的 值不必
键必须是不可变的 如:字符串 数字 元组

字典创建

info = {'name':'班长', 'id':100, 'sex':'f', 'address':'中国'}print(info['name'])print(info['address'])注:列表使用[],元组使用(),字典使用{}.

通过get方式获取不存在的键值,不然会报错

>>> age = info.get('age')>>> age #'age'键不存在,所以age为None>>> type(age)<type 'NoneType'>>>> age = info.get('age', 18) # 若info中不存在'age'这个键,就返回默认值18>>> age

使用[]添加或修改元素

dict = {'Name': 'guojiaxu', 'Age': 7, 'Class': 'First'}dict['Age'] = 8;               # 更新 Agedict['School'] = "nylg"        # 添加信息print ("dict['Age']: ", dict['Age'])print ("dict['School']: ", dict['School'])

删除字典元素

del dict['Name'] # 删除键 'Name'dict.clear()     # 删除字典del dict         # 删除字典

字典是支持无限极嵌套的,如下面代码:

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)输出如下结果:        圆明园        苏州街        中关村        北京大学

字典遍历

使用keys()获取所有键

dict = {'name':'guo','sex':'boy'}for key in dict.key():    print(key)>>name>>sex

使用values()获取所有值

dict = {'name':'guo','sex':'boy'}    for value in dict.values():        print(value)>>guo>>boy

使用items()获取所有键值对

dict = {'name':'guo','sex':'boy'}for item in dict.items():    print(item)>>('name','guo')>>('sex','boy')

遍历字典的key-value(键值对)

dict = {'name':'guo','sex':'boy'}    for key,value in dict.items():        print('key=%s,value=%s'%(key,value))>>key=name,value=guo>>key=sex,value=boy

字典操作

使用update()合并字典、会覆盖原有的值。

def mydict01():    a = {"name":"aaa", "age":20}    b = {"id":20, "name":"bbb"}a.update(b)print(a)

使用del删除具有指定键的元素

def mydict01():    a = {"name":"aaa", "age":20}    b = {"id":20, "name":"bbb"}    # del删除某个删除    del b["id"]

使用clear清除所有元素

def mydict02():    # 1. 清空字典方式    a = {"name":"aaaa"}    a = {}    # 2. clear    a.clear()

使用in判断是否存在(判断的是字典的键)

def mydict03():    a = {"name": "aaa", "age": 20}    # keys获得字典中所有键的列表    print( list(a.keys()) )    # values获得字典中所有的值的列表    print(list(a.values()))    # items返回值和键的列表    print( list(a.items()) )    for k, v in a.items():        print("%s:%s" %(k, v))    if "name" not in a.keys():        print("不存在!")    else:        print("存在!")

python内置函数

len(item)   计算容器中元素个数max(item)   返回容器中元素最大值min(item)   返回容器中元素最小值del(item)   删除变量
原创粉丝点击