python - 如何识别数组是否是对象数组python
问题描述
我有 JSON,我想确定它是一个对象数组还是一个字符串数组。我们如何在python中识别它?
arrayA = [{"name", "john", "address": "usa"}, {"name":"adam": "china"}]
arrayB = ["Country", "State"]
解决方案
列表推导将遍历列表并为每个值创建一个带有布尔值的新列表。布尔值取决于元素的类型。然后,all()
将检查序列中的所有元素是否为True
.
array_a = [{"name": "john", "address": "usa"},
{"name": "adam", "address": "china"}]
array_b = ["Country", "State"]
array_c = ["Country", "State", {"name": "adam", "address": "china"}]
print(all(isinstance(elem, str) for elem in array_a))
# False
print(all(isinstance(elem, str) for elem in array_b))
# True
print(all(isinstance(elem, str) for elem in array_c))
# False
如果您不知道这种形式的语句[<expression> for <variable> in <iterable>]
,它是这样工作的:数据结构 - 列表理解
编辑:感谢 B. Morris 的评论;)
推荐阅读
- asp.net - 不接受我需要连接到 DynamoDB 的访问密钥
- javascript - 如何操作 React webapp 的 DOM(使用 Chrome DevTools)?
- c# - C# 仅在其他方法未运行时才允许方法运行
- oracle - 我需要为需要在 oracle 中计算的“AGE”属性添加自动计算
- kubernetes - 用于本地开发的带有 skaffold 的 GCP 证书
- go - 如何拆分字符串但将分隔符保留为单独的元素
- python - Python 和 Azure-functions-core-tools
- ssl - 自动更新 website.com 和 *.website.com 证书的方式
- python - Tensorflow 概率错误:OperatorNotAllowedInGraphError:不允许迭代 `tf.Tensor`
- python - 如何增加 matplotlib 标签中的无穷大符号