代码示例:
import datetime
data = [ {"month": "June", "value": 30}, {"month": "August", "value": 60}, {"month": "May", "value": 45}, {"month": "November", "value": 20}, {"month": "March", "value": 50}, {"month": "April", "value": 40}, {"month": "January", "value": 10}, {"month": "December", "value": 15}, {"month": "July", "value": 35}, {"month": "February", "value": 25}, {"month": "October", "value": 5}, {"month": "September", "value": 55}, ]
data.sort(key=lambda x: datetime.datetime.strptime(x["month"], "%B"))
start_month = datetime.datetime.strptime(data[0]["month"], "%B").month end_month = datetime.datetime.strptime(data[-1]["month"], "%B").month for month in range(start_month, end_month + 1): month_name = datetime.date(1900, month, 1).strftime('%B') month_exist = False for item in data: if item["month"] == month_name: month_exist = True break if not month_exist: data.append({"month": month_name, "value": 0})
data.sort(key=lambda x: datetime.datetime.strptime(x["month"], "%B"))
print(data)