【可变tuple前提】组合数据类型,可以替换tuple中list中的元素
【dict定义】
方式一:dict中元素的插入顺序和打印顺序未必一致
d = {
'Alice': 45,
'Bob': 60,
'Candy': 75,
'David': 86,
'Ellena': 49
}
方式二:
d = dict()
print(d) # ==> {}
【dict读取】
方式一:通过d[key]的形式,就可以得到对应的value,key不存在时会报错
方式二:dict本身提供get方法,把key当作参数传递给get方法,key不存在是i输出none
print(d['Bob']) # ==> 60
print(d.get('Alice')) # ==> 45
【dict添加】
方式一:替换多个key d['key'] = [value, value],若key不存在自动生成
方式二:增加一个key d['key'].append(value),若key不存在会报错;值得注意的,append的原value值必须是数组
1.T = (1, 'CH', [3, 4])
tuple里面包含list,导致tuple是可变的,请修改T的定义,不改变基本数据类型的数据,使T是不可变的。
不可变的是tuple,改为T = (1, 'CH', (3, 4))
2.
根据如下dict,打印出Alice, Bob, Candy, Mimi, David的成绩,当同学不存在时,打印None。
d = {
'Alice': 45,
'Bob': 60,
'Candy': 75,
'David': 86,
'Ellena': 49
}
# Enter a code
d = {
'Alice': 45,
'Bob': 60,
'Candy': 75,
'David': 86,
'Ellena': 49
}
print('Alice:{}'.format(d.get('Alice')))
print('Bob:{}'.format(d.get('Bob')))
print('Candy:{}'.format(d.get('Candy')))
print('Mimi:{}'.format(d.get('Mimi')))
print('David:{}'.format(d.get('David')))
3.
已有同学的某次成绩dict如下:
d = {
'Alice': [45],
'Bob': [60],
'Candy': [75],
}
Alice、Bob、Candy的最近三次的成绩分别是[50, 61, 66],[80, 61, 66],[88, 75, 90],请更新dict,使得dict可以保存同学多次的成绩。
# Enter a code
d = {
'Alice': [45],
'Bob': [60],
'Candy': [75],
}
d['Alice'].append(50)
d['Alice'].append(61)
d['Alice'].append(66)
d['Bob'].append(80)
d['Bob'].append(61)
d['Bob'].append(66)
d['Candy'].append(88)
d['Candy'].append(75)
d['Candy'].append(90)
print(d)
4.已有同学们的成绩如下,请更新Alice的成绩为60,并把旧的成绩记录下来。(更新为60,打印出45)【思考:当原value是int是,怎么添加新value而不是替换】
d = {
'Alice': 45,
'Bob': 60,
'Candy': 75,
'David': 86,
'Ellena': 49
}
# Enter a code
d = {
'Alice': 45,
'Bob': 60,
'Candy': 75,
'David': 86,
'Ellena': 49
}
print(d['Alice'])
d['Alice'] = 60
print(d)
本文介绍了Python字典的创建、读取和添加元素的方法,并展示了如何将包含列表的可变元组转换为不可变元组。同时,提供了处理字典中存储多位同学成绩的场景,包括更新和保存历史成绩。最后,讨论了如何在保持原字典不变的情况下,为学生添加新的成绩记录并更新原有成绩。

267

被折叠的 条评论
为什么被折叠?



