我有一本Python字典,看起来像这样:

data = {
  "shape" : "rectangle",
  "dimensions" : [
    {
      "length" : 15,
      "breadth": 20,
    },
    {
      "length" : 20,
      "breadth": 10,
    }
  ]
}

在我的用例中,将有100多个这样的矩形及其尺寸.

我写这篇文章是为了找到这个地区:

length = data['dimensions'][0]['length']
breadth = data['dimensions'][0]['breadth']
area = length * breadth 
print(area)

运行上面的代码将得到300的结果,因为它将字典中的前两个长度和宽度数据相乘(15×20).

如何获得其他"长度"和"宽度"数据的相乘值,并将它们与某种循环相加?同样,在我的用例中,将有数百个这样的"长度"和"宽度"数据条目.

推荐答案

您可以使用列表理解:

[item["length"] * item["breadth"] for item in data["dimensions"]]

这将输出:

[300, 200]

要将它们相加,可以使用sum():

sum(item["length"] * item["breadth"] for item in data["dimensions"])

这将输出:

500

Python相关问答推荐

如何使用没有Selenium的Python在百思买着陆页面上处理国家/地区 Select ?

列表上值总和最多为K(以O(log n))的最大元素数

试图找到Python方法来部分填充numpy数组

Gekko:Spring-Mass系统的参数识别

将数据框架与导入的Excel文件一起使用

Python库:可选地支持numpy类型,而不依赖于numpy

从一个系列创建一个Dataframe,特别是如何重命名其中的列(例如:使用NAs/NaN)

部分视图的DataFrame

使用NeuralProphet绘制置信区间时出错

在pandas数据框中计算相对体积比指标,并添加指标值作为新列

在Python中使用yaml渲染(多行字符串)

(Python/Pandas)基于列中非缺失值的子集DataFrame

Beautifulsoup:遍历一个列表,从a到z,并解析数据,以便将其存储在pdf中.

为用户输入的整数查找根/幂整数对的Python练习

按条件添加小计列

来自Airflow Connection的额外参数

Pandas:将值从一列移动到适当的列

有没有一种方法可以在朗肯代理中集成向量嵌入

在聚合中使用python-polars时如何计算模式

如何在Python中实现高效地支持字典和堆操作的缓存?