字典的使用
关于操作文档,推荐去官网查看。
创建字典
#创建字典
#使用{}
#语法:{k1:v1,k2:v2,k3:v3}
#使用dict()函数来创建字典
#每一个参数都是一个键值对,参数名就是键,参数值就是值(这种方式创建的字典,key都是字符串)
d = dict(name='孙悟空',age='18',gender='男')
print(d,type(d))
执行结果:
使用序列创建字典
#创建字典
#使用{}
#语法:{k1:v1,k2:v2,k3:v3}
#使用dict()函数来创建字典
#每一个参数都是一个键值对,参数名就是键,参数值就是值(这种方式创建的字典,key都是字符串)
d = dict(name='孙悟空',age='18',gender='男')
#也可以将一个包含有双值子序列的序列转换为字典
#双值序列,序列中只有两个值,[1,2]('a',3) 'ab'
#子序列,如果序列中的元素也是序列,那么我们就称这个元素为子序列
# [(1,2),(3,5)]
d = dict([('name','孙悟饭'),('age',18)])
print(d,type(d))
执行结果:
获取字典中键值对的个数
d = dict([('name','孙悟饭'),('age',18)])
# len() 获取字典中键值对的个数
print(len(d))
执行结果:
d = dict(name='孙悟空',age='18',gender='男')
# len() 获取字典中键值对的个数
print(len(d))
执行结果:
检查序列中是否包含/不包含指定的键
# in 检查字典中是否包含指定的键
# not in 检查字典中是否不包含指定的键
print('name' in d)
执行结果:
# in 检查字典中是否包含指定的键
# not in 检查字典中是否不包含指定的键
print('hello' in d)
执行结果:
获取字典中的值
d = dict(name='孙悟空',age='18',gender='男')
# 获取字典中的值,根据键来获取值
# 语法:d[key]
print(d['name'])
执行结果:
key值必须是字符串的形式,如果不加“''”,将会把当做一个变量去处理,程序会出错。
print(d[age])
执行结果:
如果是变量的形式,则如下:
d = dict(name='孙悟空',age='18',gender='男')
n = 'name'
print(d[n])
执行结果:
注意:
通过[]来获取值时,如果键不存在,会抛出异常 KeyError
另外还有一种方法可以获取字典里面的值。
get(key[, default]) 该方法用来根据键来获取字典中的值。
d = dict(name='孙悟空',age='18',gender='男')
print(d.get('name'))
# 如果获取的键在字典中不存在,会返回None
# 也可以指定一个默认值,来作为第二个参数,这样获取不到值时将会返回默认值
print(d.get('hello'))
print(d.get('hello','默认值'))
执行结果:
修改字典
d[key] = value
#d[key] = value 如果key存在则覆盖,不存在则添加
d['name'] = 'sunwukong' # 修改字典的key-value
d['address'] = '花果山' # 向字典中添加key-value
print(d)
执行结果:
setdefault(key[, default])
# setdefault(key[, default])可以用来向字典中添加key-value
# 如果key已经存在于字典中,则返回key的值,不会对字典做任何操作
# 如果key不存在,则向字典中添加这个key,并设置value
result = d.setdefault('name','猪八戒')
result = d.setdefault('hello','猪八戒')
print('result =',result)
print(d)
执行结果:
update([other])
# update([other])
# 将其他的字典中的key-value添加到当前字典中
# 如果有重复的key,则后边的会替换当前的
d = {'a':1,'b':2,'c':3}
#d2 = {'d':4,'e':5,'f':6}
d2 = {'d':4,'e':5,'f':6, 'a':7}
d.update(d2)
print(d)
执行结果:
本节重点介绍了字典中的一些基本操作,包含创建字典,获取字典的个数,检查字典中是否包含/不包含某个键,以及获取value,修改字典等操作方法。
配套视频课程,点击这里查看
获取更多资源请订阅Python学习站