Как вызвать все атрибуты объекта через цикл?

В Python для вызова всех атрибутов объекта через цикл можно воспользоваться встроенной функцией dir(). Эта функция возвращает список всех имен, которые определены в пространстве имен объекта, т.е. список всех атрибутов объекта.

Для использования функции dir() достаточно передать ей объект в качестве аргумента. Например, чтобы вывести все атрибуты объекта obj на экран, можно написать следующий код:

obj = SomeClass()
for attr in dir(obj):
    print(attr)

Здесь SomeClass - это класс, экземпляры которого имеют атрибуты, которые вы хотите вызвать. Обратите внимание, что атрибуты могут быть как переменными, так и методами.

Обычно возвращаемый список, полученный с помощью dir(), содержит все атрибуты объекта, включая также встроенные атрибуты. Если вы хотите вызывать только пользовательские атрибуты, можно использовать условие, чтобы отфильтровать исключить встроенные атрибуты. Например:

for attr in dir(obj):
    if not attr.startswith('__'):
        print(attr)

В этом коде мы проверяем, не начинается ли имя атрибута с двух символов подчеркивания (что является указанием на встроенные атрибуты). Если имя не начинается с двух подчеркиваний, мы печатаем его.