要在一次循环中获取对象中的最大值和最小值属性,可以使用迭代器和条件判断来实现。以下是一个示例代码:

def get_min_max_property(objects, property_name):
    min_value = float('inf')
    max_value = float('-inf')
    
    for obj in objects:
        value = obj.get(property_name)
        if value is not None:
            min_value = min(min_value, value)
            max_value = max(max_value, value)
    
    return min_value, max_value

在这个示例中,objects 是一个包含对象的列表,property_name 是要获取的属性的名称。我们使用float('inf')float('-inf')来初始化最小值和最大值,以确保第一个值能正常比较。

然后,我们使用一个循环来遍历每个对象,并通过obj.get(property_name)获取指定属性的值。如果值不为空,则更新最小值和最大值。

最后,函数返回最小值和最大值。

示例用法:

objects = [
    {"name": "Object 1", "value": 10},
    {"name": "Object 2", "value": 5},
    {"name": "Object 3", "value": 15},
    {"name": "Object 4", "value": 8},
    {"name": "Object 5", "value": 12},
]

min_value, max_value = get_min_max_property(objects, "value")
print("Minimum value:", min_value)
print("Maximum value:", max_value)

输出:

Minimum value: 5
Maximum value: 15

在这个示例中,我们有一个包含多个对象的列表,每个对象都有一个名为"value"的属性。我们调用get_min_max_property函数来获取"value"属性的最小值和最大值,并将结果打印出来

stream一次循环获取对象中同时获取最大值和最小值的属性

原文地址: http://www.cveoy.top/t/topic/hzvh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录