我有API作为响应返回JSON。我想用Python对JSON进行排序。 这是我基于JSON进行排序的部分。
"event_dates": {
"starting_day": "2020-12-05T11:00:00.000Z",
"ending_day": null,
"additional_description": null
}
我用
进行了排序 sorted_data1 = sorted(data["data"],key=lambda x: x["event_dates"]["starting_day"] if x["event_dates"]["starting_day"] is not None else str(0))
,但是由于其他str(0),在列表的开头没有None类型排序。有没有办法跳过无类型值,使它们不在排序列表中?另外,如果您有改进排序功能的建议,我将不胜感激!
答案 0 :(得分:5)
在排序之前过滤掉值。
sorted_data1 = sorted((x for x in data["data"] if x["event_dates"]["starting_day"] is not None),key=lambda x: x["event_dates"]["starting_day"])