这肯定是重复的,但假设我有一个类如下:
class MyObj(object):
def __init__(self, *args, **kwargs):
self._data = [2, 1, 3]
self._more_data = [False, True, False]
如何使其可排序,而不是针对其他 MyObj 对象(我可以使用__lt__
),而是在内部?因此,如果我打电话sorted(my_obj_instance)
,我会得到一个包含以下数据的版本:
self._data = [1,2,3]
self._more_data [True, False, False]
即 _data 是按数字排序的,_more_data 已经进行了相应的排序。