请教各位一个问题,
dic={'url': 'https://starwars.fandom.com/wiki/Ahch-To', 'name': 'Ahch-To', 'region': 'Unknown Regions', 'sector': None, 'suns': 2, 'moons': 1, 'orbital_period_days': None, 'diameter_km': None, 'gravity_std': None, 'climate': None, 'terrain': ['Oceans', 'Rocky islands'], 'population': 1}
plants是由dic类型所构成的列表,题目要求使用三目运算符和lambda来进行排序,
如果diameter_km不为空,就按照diameter_km降序排列,
如果diameter_km为空,就按照name升序排列。
plants里面diameter_km有为空的也有不为空的,这样该如何写这个代码呢
我是这样写的,但是好像不行
a= sorted(planets, key=lambda x:(x['name']if x['diameter_km'] is None else x['diameter_km']))