以下是一个示例代码,用于按星期记录订单金额:
import datetime
# 初始化订单数据
orders = [
{'amount': 100, 'date': datetime.datetime(2021, 8, 1)},
{'amount': 200, 'date': datetime.datetime(2021, 8, 2)},
{'amount': 150, 'date': datetime.datetime(2021, 8, 3)},
{'amount': 300, 'date': datetime.datetime(2021, 8, 8)},
{'amount': 250, 'date': datetime.datetime(2021, 8, 9)},
{'amount': 180, 'date': datetime.datetime(2021, 8, 10)},
{'amount': 350, 'date': datetime.datetime(2021, 8, 15)},
{'amount': 400, 'date': datetime.datetime(2021, 8, 16)},
{'amount': 280, 'date': datetime.datetime(2021, 8, 17)},
]
# 创建按星期记录订单金额的字典
weekly_amounts = {}
# 遍历订单数据
for order in orders:
week_number = order['date'].isocalendar()[1] # 获取订单的星期数
if week_number in weekly_amounts:
weekly_amounts[week_number] += order['amount'] # 如果星期数已存在,则累加订单金额
else:
weekly_amounts[week_number] = order['amount'] # 如果星期数不存在,则将订单金额作为初始值
# 打印按星期记录的订单金额
for week_number, amount in weekly_amounts.items():
print(f"Week {week_number}: ${amount}")
这个示例代码首先初始化了一个订单数据列表,每个订单有一个金额和日期。然后,创建了一个空的字典 weekly_amounts
用于存储按星期记录的订单金额。
接下来,遍历订单数据列表,通过调用 isocalendar()
方法获取订单的星期数。然后,检查 weekly_amounts
字典中是否已存在该星期数的记录,如果存在,则将订单金额累加到已存在的金额上;如果不存在,则将订单金额作为初始值。
最后,遍历 weekly_amounts
字典,打印每个星期的订单金额。
注意:这只是一个示例代码,实际应用中可能需要根据具体需求进行调整。
下一篇:按星期几排序 - Django