以下是一个示例代码,演示如何使用按键过滤对象并将其扁平化为数组:
def flatten(obj):
# 检查对象类型
if isinstance(obj, dict):
# 过滤键,只保留值为True的键
filtered_keys = [key for key, value in obj.items() if value]
# 返回扁平化后的键数组
return filtered_keys
# 如果对象不是字典,则返回空数组
return []
# 示例对象
obj = {
'key1': True,
'key2': False,
'key3': True
}
# 使用flatten函数扁平化对象为数组
result = flatten(obj)
# 打印结果
print(result)
输出结果为:
['key1', 'key3']
在示例中,我们定义了一个名为flatten
的函数,该函数接受一个对象作为参数。如果对象是字典,则函数会过滤键,并返回那些值为True的键。如果对象不是字典,则返回空数组。
然后,我们定义了一个示例对象obj
,其中包含三个键值对。我们使用flatten
函数将其扁平化为数组,并将结果存储在result
变量中。最后,我们打印出结果。
请注意,这只是一个简单的示例,适用于对象只有一层的情况。如果对象嵌套更深,您可能需要使用递归来处理。
下一篇:按键过滤数组