Я не уверен, стоит ли использовать __iter__
для проверки типа, есть лучший выбор для этого типа Iterable
.
Это ваше собственное мнение, чтобы разделить группы Я думаю, что самый простой способ - это создать черные списки ...
try:
from collections.abc import Iterable # py3
except ImportError:
from collections import Iterable #py2
def check(arg):
if not isinstance(arg, Iterable):
return False
elif isinstance(arg, (str, bytes)):
return False
else:
return True