慕斯709654
您没有明确说明,但很明显您使用的是 numpy 数组。所以让我们打破这一行,以一些任意数组为例:>>> gift_costs = numpy.array([10, 22, 35, 41])>>> total_price = (gift_costs[gift_costs < 25]).sum() * 1.08>>> total_price34.56total_price = : 表达式右侧的内容将被分配给total_price变量。gift_costs < 25:每当您将比较运算符(例如<)与 numpy 数组一起使用时,将为数组的每个项目评估该条件语句。然后,您将获得一个充满布尔值的新数组,True如果给定值与条件匹配,则布尔值将是,False否则。因此,对于上面的示例,您将得到以下内容:array([True, True, False, False])gift_costs[gift_costs < 25]: 考虑到我们刚才提到的内容,我们现在要求gift_costs返回其值,其位置在以下序列中是True: [True, True, False, False]。这些元素是:10 和 22,返回的对象是:array([10, 22]).sum():Numpy 数组对象有一个名为 的方法sum(),它返回数组的总和(∑)。在我们的示例中,这是 10 + 22 = 32。* 1.08: 最后将sum()方法(32)返回的值乘以1.08,等于34.56免责声明:请原谅我的英语,我尽力让自己清楚。