两个拓展操作——教你如何快速创建一个字典!
第一个:使用dict()函数创建字典!
同学们是不是感觉上面那种创建字典的方式B格不够,那么老师接下来为大家介绍一种使用函数创建字典的方法:
dict语法:
class dict(**kwarg)
class dict(mapping, **kwarg)
class dict(iterable, **kwarg)
dict函数作用:通过其他映射(比如其他字典)或者(键,值)对的序列建立字典。
dict1 = dict(a=‘a’, b=‘b’, t=‘t’) # 传入关键字
print(dict1)
dict2 = dict(zip([‘one’, ‘two’, ‘three’], [1, 2, 3])) # 映射函数方式来构造字典
print(dict2)
dict3 = dict([(‘one’, 1), (‘two’, 2), (‘three’, 3)]) # 可迭代对象方式来构造字典
print(dict3)
重点: 使用dict()函数,dict值必须一一对应。
使用dict()函数,必须每个元组里的成比例。才能将元组转成 key:value
第二个:使用fromkeys()函数创建字典!
语法:
dict.fromkeys(seq[, value])
参数:
seq – 字典键值列表。
value – 可选参数, 设置键序列(seq)的值。
返回值:
该方法返回一个新字典。
fromkeys() 函数用于创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值。
上代码:
dict3 = dict.fromkeys([‘name’,‘age’])
print(dict3)
dict4 = dict.fromkeys([‘name’,‘age’],10)
print(dict4)
需要注意的是:
fromkeys 方法只用来创建新字典,不负责保存。当通过一个字典来调用 fromkeys 方法时,如果需要后续使用一定记得给他复制给其他的变量。
②访问字典:
第一阶段:基操勿6!
如果要想获取字典中某个键的值,可以通过访问键的方式来显示对应的值。上代码:
dict = {‘线代’: “99”, “数据分析”: “99”, “概率论”: “98”} # 创建字典
print(‘小红同学的线代成绩是:’,dict[‘线代’]) # 输出线代成绩
print(‘小红同学的线代成绩是:’,dict[‘数据分析’]) # 输出数据分析成绩
print(‘小红同学的线代成绩是:’,dict[‘概率论’]) # 输出概率论成绩
第二阶段:项目常用!
(1) get 获取指定key 对应的value,如果key不存在返回none——语法:字典名.get(key)
上代码:
a = {‘干干’: 11, ‘age’: 11}
print(a.get(‘age’))
(2)keys 取出所有的key——用法:字典名.keys()
上代码:
a = {‘干干’: 11, ‘age’: 11}
print(a.keys())
(3)values 取出所有的值——用法:字典名.values()
上代码:
a = {‘干干’: 11, ‘age’: 11}
print(a.values())
(4) items 取出所有的键值对——用法:字典名.items()
上代码:
a = {‘干干’: 11, ‘age’: 11}
print(a.items())
(5)setdefault(key) 有此键则查,无则增!
上代码:
di2 = {‘name’:‘干干’,‘age’:18,‘sex’:‘男’}
print(di2.setdefault(‘name’))
di2.setdefault(‘name2’)
print(di2)