python中判断实例可迭代地几种方式
1. 利用 __iter__内建属性
if hasattr(obj, '__iter__') :
print 'iterable'
这种方法不能检测字符串,如:hasattr(’’, ‘iter’)返回False。
2. 假设obj是iterable的,如果不是的话,就抛出异常
'''
Python学习交流群:857662006 寻找有志同道合的小伙伴,互帮互助
群里还有不错的视频学习教程和PDF电子书!
'''
try:
for v in obj:
print v
except TypeError, e:
print e
3. 检查实例是否是collections.Iterable子类
import collections
if isinstance(obj, collections.Iterable):
print 'iterable'
本文来自博客园,作者:I'm_江河湖海,转载请注明原文链接:https://www.cnblogs.com/jhhh/p/16763167.html