Вопросы к Поиску с Алисой
Чтобы определить, является ли объект итерируемым в Python, можно проверить, реализует ли он метод iter() или getitem(). codechick.io
Один из способов — использовать встроенную функцию hasattr(). sky.pro Она принимает два аргумента: объект и имя атрибута, наличие которого проверяется. sky.pro Если объект итерируемый, то он будет иметь метод iter. sky.pro
Более надёжным способом является использование функции iter(). sky.pro Она пытается вернуть итератор для объекта. sky.pro Если объект не итерируемый, то будет сгенерировано исключение TypeError. sky.pro
Пример использования функции iter():
def is_iterable(obj): try: iter(obj) return True except TypeError: return False
Также можно использовать collections.abc.Iterable ABC и проверить с помощью функции issubclass. www.w3docs.com