Написать фрагмент программы (функцию) fields(obj), которая будет подсчитывать, сколько всего полей в объекте obj, и сколько из них — «методы» (точнее говоря, сколько из них можно вызвать как функцию. fields возвращает кортеж из указанных двух значений.
Для решения понадобятся функции dir(), getattr() и callable() (см. документацию
(28, 22)
Почему так? Потому что в нашем объекте, помимо четырёх заданных нами полей (var, res, __init__() и fun(), имеются ещё 24 спецполя, созданные Python-ом (из них 20 — callable). Вот полный список: Var, __class__(), __delattr__(), __dict__, __dir__(), __doc__, __eq__(), __format__(), __ge__(), __getattribute__(), __gt__(), __hash__(), __init__(), __le__(), __lt__(), __module__, __ne__(), __new__(), __reduce__(), __reduce_ex__(), __repr__(), __setattr__(), __sizeof__(), __str__(), __subclasshook__(), __weakref__, fun(), res.