为了账号安全,请及时绑定邮箱和手机立即绑定

如何计算列的唯一值并将每个值附加到字典?

如何计算列的唯一值并将每个值附加到字典?

交互式爱情 2023-02-15 16:01:41
本教程建议使用此解决方案opened_file = open('AppleStore.csv')from csv import readerread_file = reader(opened_file)apps_data = list(read_file)content_ratings = {}for row in apps_data[1:]:    c_rating = row[10] #the content rating that says which app is suitable for which age    if c_rating in content_ratings:        content_ratings[c_rating] += 1    else:        content_ratings[c_rating] = 1print(content_ratings) 输出是{'17+': 622, '4+': 4433, '9+': 987, '12+': 1155}我只是想了解代码逻辑。该行说if c_rating in content_ratings:应该返回False,因为它不符合条件,因为它content_rating本身是空的,所以c_rating不在字典中。这个逻辑如何找到内容评级并将其附加到字典中?
查看完整描述

1 回答

?
弑天下

TA贡献1818条经验 获得超8个赞

if-else 语句中的两行看起来一样,但有细微差别,+符号:

if c_rating in content_ratings:
    content_ratings[c_rating] += 1
    else:
    content_ratings[c_rating] = 1

content_ratings[c_rating] = 1这就是在 python 中将元素添加到字典中的方式。您也可以用同样的方式更新现有的元素字典;在这里content_ratings[c_rating] += 1你得到现有的元素并增加它的价值。

所以,你是对的,当if c_rating in content_ratings:returns时false,它添加元素,否则,它更新它的值(增加计数)。

您可以在文档中查看字典的基本操作


查看完整回答
反对 回复 2023-02-15
  • 1 回答
  • 0 关注
  • 78 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信