可以使用列表推导式和条件判断来处理上述数据格式。首先,我们可以使用列表推导式遍历每个列表中的字典,判断"data"是否为空,如果不为空则保留该字典。接下来,我们可以使用字典推导式将保留的字典重新构建成原始数据格式的字典。

以下是处理的示例代码:

data = {
    "cpu_manage_usage": [
        {
            "coming_time": "2023-09-12 11:23:25",
            "data": ""
        },
        {
            "coming_time": "2023-09-12 11:24:25",
            "data": ""
        },
        {
            "coming_time": "2023-09-12 11:25:25",
            "data": 1.0
        },
        {
            "coming_time": "2023-09-12 11:26:25",
            "data": 2.0
        }
    ],
    "cpu_dp_avg_usage": [
        {
            "coming_time": "2023-09-12 11:23:25",
            "data": ""
        },
        {
            "coming_time": "2023-09-12 11:24:25",
            "data": 7.0
        },
        {
            "coming_time": "2023-09-12 11:25:25",
            "data": ""
        },
        {
            "coming_time": "2023-09-12 11:26:25",
            "data": 6.0
        },
    ],
    "cpu": [
        {
            "coming_time": "2023-09-12 11:23:25",
            "data": 1.0
        },
        {
            "coming_time": "2023-09-12 11:24:25",
            "data": 1.0
        },
        {
            "coming_time": "2023-09-12 11:27:25",
            "data": ""
        },
    ]
}

# 处理cpu_manage_usage
cpu_manage_usage = [item for item in data["cpu_manage_usage"] if item["data"] != ""]

# 处理cpu_dp_avg_usage
cpu_dp_avg_usage = [item for item in data["cpu_dp_avg_usage"] if item["data"] != ""]

# 处理cpu
cpu = [item for item in data["cpu"] if item["data"] != ""]

# 构建处理后的数据字典
processed_data = {
    "cpu_manage_usage": cpu_manage_usage,
    "cpu_dp_avg_usage": cpu_dp_avg_usage,
    "cpu": cpu
}

print(processed_data)

输出结果:

{
    "cpu_manage_usage": [
        {
            "coming_time": "2023-09-12 11:25:25",
            "data": 1.0
        },
        {
            "coming_time": "2023-09-12 11:26:25",
            "data": 2.0
        }
    ],
    "cpu_dp_avg_usage": [
        {
            "coming_time": "2023-09-12 11:24:25",
            "data": 7.0
        },
        {
            "coming_time": "2023-09-12 11:26:25",
            "data": 6.0
        }
    ],
    "cpu": [
        {
            "coming_time": "2023-09-12 11:23:25",
            "data": 1.0
        },
        {
            "coming_time": "2023-09-12 11:24:25",
            "data": 1.0
        }
    ]
}

如上所示,处理后的数据字典中已经丢弃了"data"为空的时间点的数据。

data 			cpu_manage_usage 									coming_time 2023-09-12 112325					data 													coming_time 2023-09-12 112425					data 													coming_time 2023-09-12 112525					data 10													coming_t

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

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