Module: utils.dir2
A fancy version of Python’s builtin dir() function.
3 Functions
- IPython.utils.dir2.safe_hasattr(obj: object, attr: str) bool
In recent versions of Python, hasattr() only catches AttributeError. This catches all errors.
- IPython.utils.dir2.dir2(obj) list of strings
Extended version of the Python builtin dir(), which does a few extra checks.
This version is guaranteed to return only a list of true strings, whereas dir() returns anything that objects inject into themselves, even if they are later not really valid for attribute access (many extension libraries have such bugs).
- IPython.utils.dir2.get_real_method(obj: object, name: str) Callable[[...], Any] | None
Like getattr, but with a few extra sanity checks:
If obj is a class, ignore everything except class methods
Check if obj is a proxy that claims to have all attributes
Catch attribute access failing with any exception
Check that the attribute is a callable object
Returns the method or None.