python学习笔记整理----字典(dict)

字典

1.字典是一种可变的容器,可以存储任意类型的数据

2.字典中的每一个数据都用‘键'进行索引而不像序列可以整数下标来进行索引

3.字典中的数据没有先后关系,字典的存储是无序的

4.字典中的数值以键(key) - 值(value)对形式进行映射存储

5.字典的键不能重复,且只能用不可变类型作为字典的键

字典的字面值表示方法:

字典的表示方法是以{}括起来,以冒号(:)分隔键 - 值对,各键 - 值对之间用逗号(,) 分隔开

创建空字典的字面值 

d{}            #d绑定空字典 

创建非空字典的字面值 

示例:

d{'name':'xiaoming','age':35} 

字典的构造函数  dict 

dict()          生成一个空的字典,等同于{}

dict(iterable)      用可迭代对象初始化一个字典

dict(**kwargs)         用关键字传参形式创建一个字典

字典的键(key)必须为 不可变类型,值(value)可以为任意类型

 不可变类型有:bool,int,float,complex,str,tuple,frozenset,bytes

可变数据类型:list , dict , set , bytearray(字节数组)

字典的基本操作 

字典的键索引:

     用[]运算符可以获取字典内的“键”对应的值,也可以用[]运算符修改“键”对应的值

1.键索引的语法:

    字典[键]

2.添加/修改字典中的元素:

    字典[键] = 值

    说明:

        键不存在时,创建键,并绑定对应的值

        键存在时,修改键绑定的值

3.删除字典元素

    del  字典[键]

字典的成员资格判断in运算符 [只判断键不判断值] 

可以用in运算符判断一个键是否存在于字典当中,如果'键'存在则返回Ture否则返回False
             not in 与 in 结果相反 

字典的迭代访问 

字典是可迭代对象,字典只能对键进行迭代访问

示例:
d={‘name’:’tarena’,’age’:’15’}
for k in d:
        print(k,’对应的值是:’,d[k])

可以用于字典的内建函数: 

len(x)   返回字典的键值对个数
max(x)   返回字典的键的最大值
min(x)    返回字典的键的最小值
sum(x)   返回字典中所有键的和
any(x)   真值测试,只要有一个键为Ture,返回Ture
all(x)    真值测试,当全部键为真值时,返回Ture 

字典推导式 

字典推导式是用可迭代对象创建字典的表达式

语法:

        {键表达式:值表达式    for    变量    in    可迭代对象    if    真值表达式} 

说明:

        if 子句部分可以省略

示例:
  生成一个字典,键为数字(10以内),值为键的平方
  d={x:x**2  for  x  in  range(10)}

 字典和列表的异同点:

1.都是可变对象
2.索引方式不同,列表用整数索引,字典用键索引
3.字典的插入,删除,修改数据的速度可能会快于列表
4.列表的存储是有序的,字典的存储是无序的 

猜你喜欢

转载自blog.csdn.net/py_1995/article/details/82795192