import json class ObjectToJsonArrayConverter: @staticmethod def convert(obj): def process_value(value): if isinstance(value, dict): return ObjectToJsonArrayConverter.convert(value) elif not isinstance(value, list): return [value] return value result = [] for key, value in obj.items(): processed_value = process_value(value) result.append({ "key": key, "value": processed_value }) return result @staticmethod def to_json(obj, indent=None): converted = ObjectToJsonArrayConverter.convert(obj) return json.dumps(converted, indent=indent, ensure_ascii=False) # 使用示例 if __name__ == "__main__": original_obj = { "name": "Test", "hobbies": ["Reading", "Swimming"], "properties": { "desc": "英俊潇洒", "nested": { "age": 25 } } } # 转换对象 converter = ObjectToJsonArrayConverter() converted_json = converter.to_json(original_obj, indent=4) print(converted_json)