python - 检查元素是列表还是另一个对象

标签 python

我有一个对象,其中包含一个名为“companies”的元素。 此元素可以是对象列表或只是单个对象(不包含在列表中)。

我想遍历所有公司,但如果元素“companies”只是单个项目(不包含在列表中),则此示例失败:

for company in companies:

我试过在for循环之前进行测试,比如:

if type(companies['company']) is list:
    # do your thing

但这也失败了。

有人能帮忙吗?

最佳答案

首先,这是一种非常糟糕的数据结构方式,您应该向创建它的人提示。如果一个项目可以是一个列表,它应该总是是一个列表,即使该列表只包含一个元素。

但是,您显示的代码应该可以工作 - 尽管更好的方法是 if isinstance(companies['company'], list)。如果这仍然不起作用,您将需要显示数据以及使用它的确切代码。

关于python - 检查元素是列表还是另一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28064747/

相关文章:

python - 1.6 版的 Django 教程

python - 如何在 Postgres 中使用 Plpython3 返回结果集

python - Pandas 数据框中按键列分组的连续空值的计数

python - 异步等待方法在 Python 3 中完成

python - 在 Flask 中设置用于测试的数据库

python - Pandas 查找日期频率

python - 从路径列表中读取文本文件 python

Python ElementTree - 在写得不好的 XML 中搜索子/孙

Python:elif 还是 new if?

python - 将 GAE 远程 API 连接到 dev_appserver.py