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

使用列表索引的元素总和列表

使用列表索引的元素总和列表

开满天机 2021-09-24 15:09:54
我试图找到厨房(18.0)和卧室面积(10.75)的总和# Create the areas list areas = ["hallway", 11.25, "kitchen", 18.0, "living room", 20.0, "bedroom", 10.75, "bathroom", 9.50] # Sum of kitchen and bedroom area: eat_sleep_area eat_sleep_area = sum(areas[3],areas[-3]) # Print the variable eat_sleep_area print(eat_sleep_area)但是当我尝试运行代码时,它说: TypeError: 'float' object is not iterable 另外我观察到,当我使用 min,max 等其他函数时,它工作得很好,谁能解释一下原因?
查看完整描述

5 回答

?
幕布斯7119047

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

在 Python 中sum(iterable[, start])需要 iterable 作为第一个参数。考虑将您的参数包装在如下列表中:

sum([areas[3],areas[-3]])


查看完整回答
反对 回复 2021-09-24
?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

对于这种事情,您需要使用字典,而不是列表:


areas = {

    'hallway': 11.25,

    'kitchen': 18.0,

    'living room': 20.0,

    'bedroom': 10.75,

    'bathroom': 9.50,

}

然后你可以像这样总结它们:


result = areas['kitchen'] + areas['bedroom']

字典允许按键查找。查看文档了解更多信息。


查看完整回答
反对 回复 2021-09-24
?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

可以sum用add操作符代替


from operator import add

eat_sleep_area = add(areas[3],areas[-3]) # if you have only two entities to add otherwise use sum and pass an iterator

或总和


eat_sleep_area = add([areas[3],areas[-3]])


查看完整回答
反对 回复 2021-09-24
  • 5 回答
  • 0 关注
  • 201 浏览
慕课专栏
更多

添加回答

举报

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