It inherits from collections.UserList, but with its added features, e.g. get lookup accepting id or external_id, almost all mutating (magic or not) methods breaks some functionality.
https://github.com/python/cpython/blob/abd6e97020e5773ce2136228e31930a6d9e82dc0/Lib/collections/__init__.py#L1196