如何在Python中检查一个对象是否可迭代?
如何检查 Python 对象是否支持迭代,也称为可迭代对象(参见定义
理想情况下,我想要类似于 isiterable(p_object)
返回 True 或 False 的函数(以 isinstance(p_object, type)
为模型)。
How does one check if a Python object supports iteration, a.k.a an iterable object (see definition
Ideally I would like function similar to isiterable(p_object)
returning True or False (modelled after isinstance(p_object, type)
).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以使用
isinstance
和collections.Iterable
进行检查。注意:自 Python 3.3 起,不推荐使用或导入 'collections' 中的 ABC,而不是从 'collections.abc' 中导入。在 3.9 中它将停止工作。
You can check for this using
isinstance
andcollections.Iterable
Note: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.9 it will stop working.
试试这个代码
Try this code
你不“检查”。你假设。
请求宽恕比请求许可更容易。
You don't "check". You assume.
It's easier to ask forgiveness than to ask permission.