如何在未知键名的情况下访问JSON并输出其中的错误信息?
遍历未知键名的错误集合输出具体错误内容
不管错误集合包含哪些键,核心思路是遍历所有键对应的值数组,提取并输出每个错误项,以下是主流编程语言的实现示例:
JavaScript 实现
仅输出错误内容
const errors = {deployer: ['error1'], discard: ['error2'], worker: ['error3']}; // 提取所有错误数组并合并为一维列表 const allErrors = Object.values(errors).flat(); // 逐个打印错误 allErrors.forEach(error => console.log(error));
输出错误关联的模块名(如deployer、discard)
const errors = {deployer: ['error1'], discard: ['error2'], worker: ['error3']}; // 遍历每个键值对 for (const module in errors) { if (errors.hasOwnProperty(module)) { errors[module].forEach(error => console.log(`${module}: ${error}`)); } }
Python 实现
仅输出错误内容
errors = {'deployer': ['error1'], 'discard': ['error2'], 'worker': ['error3']} # 合并所有错误列表并逐个打印 all_errors = [] for error_list in errors.values(): all_errors.extend(error_list) for error in all_errors: print(error)
简洁写法(列表推导式)
errors = {'deployer': ['error1'], 'discard': ['error2'], 'worker': ['error3']} for error in [err for lst in errors.values() for err in lst]: print(error)
输出错误关联的模块名
errors = {'deployer': ['error1'], 'discard': ['error2'], 'worker': ['error3']} for module, error_list in errors.items(): for error in error_list: print(f"{module}: {error}")
内容的提问来源于stack exchange,提问作者tongson
相关产品推荐
相关产品推荐

