刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

小明想要给居委会工作的妈妈制作一个小程序:列表中存储一组居民的年龄,将其中所有大于 60 的值保存在字典的第一个 key 中,将其他的值保存在字典的第二个 key 中。

【输入样例】

【输出样例】

{'B': [20, 9, 13, 47, 18, 25, 30, 10], 'A': [75, 61, 80, 67, 88]}

【预设代码】

dic = {}

all_list = [20, 75, 61, 80, 9, 13, 47, 18, 25, 30, 67, 88, 10]

for i in all_list:

 if i > 60:

 grade = 'A'

 else:

 grade = 'B'

 if ____________:

 ______________

 else:

 dic[grade] = [i]

print(dic)

使用微信搜索喵呜刷题,轻松应对考试!

答案:

```pythonif grade not in dic:dic[grade] = []if i > 60:dic[grade].append(i)```

解析:

【喵呜刷题小喵解析】:

首先,我们需要遍历列表`all_list`中的每一个元素。对于每一个元素,我们需要判断它是否大于60。如果大于60,我们将其添加到字典`dic`的'A' key对应的列表中;否则,我们将其添加到字典`dic`的'B' key对应的列表中。

然而,题目中的预设代码里有一个问题,它试图在每次循环时都更新字典`dic`,这是错误的。因为在每次循环时,`grade`的值可能会改变,所以直接根据`grade`的值来更新字典`dic`会导致错误的结果。

正确的做法应该是,首先检查`grade`(即'A'或'B')是否已经在字典`dic`中。如果不在,就创建一个新的空列表,并将`grade`作为key添加到字典`dic`中。然后,根据`i`的值(即当前正在检查的元素)是否大于60,将`i`添加到相应的列表中。

所以,答案中的代码解决了这个问题,它首先检查`grade`是否已经在字典`dic`中,如果不在,就创建一个新的空列表,并将`grade`作为key添加到字典`dic`中。然后,根据`i`的值是否大于60,将`i`添加到相应的列表中。
创作类型:
原创

本文链接:小明想要给居委会工作的妈妈制作一个小程序:列表中存储一组居民的年龄,将其中所有大于 60 的值保存在

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share