我有一个列表,其中包含一个简单的类对象,比如 Person 即:
my_list [Person<obj>, Person<obj> ..]
这Person object
很简单,有各种变量,值,即:
Person_n.name = 'Philip'
Person_n.height = '180'
Person_n.lives_in = 'apartment'
如您所见,所有这些都Person
生活在某个地方,无论是:公寓、房屋还是船。
我要创建的是一个新列表,或者一个字典(不管是哪个),我在其中对这个列表进行了排序,它们按它们的生活值分组,并且人口最多的选择是新列表中的第一名(或字典,其中 living_in 值将是关键)。
例如:
new_list = [('apartment', [Person_1, Person_5, Person_6, Person_4]), ('house': [Person_2, Peson_7]), ('boat': [Person_3])]
我是 Python 新手,我陷入了无限循环。必须有一种简单的方法来做到这一点,而无需循环 4 次。
实现这个所需的新列表的 Pythonic 方法是什么?