以下是一个示例代码,用于按日期和剩余余额对银行交易记录进行排序:
import datetime
# 定义一个示例的交易记录列表
transaction_records = [
{'date': '2021-01-03', 'balance': 100},
{'date': '2021-01-01', 'balance': 200},
{'date': '2021-01-02', 'balance': 150},
]
# 定义一个自定义的排序函数
def sort_records(record):
# 将日期字符串转换为日期对象
date = datetime.datetime.strptime(record['date'], '%Y-%m-%d')
return (date, record['balance'])
# 使用自定义的排序函数对交易记录列表进行排序
sorted_records = sorted(transaction_records, key=sort_records)
# 打印排序后的交易记录
for record in sorted_records:
print(record)
输出结果为:
{'date': '2021-01-01', 'balance': 200}
{'date': '2021-01-02', 'balance': 150}
{'date': '2021-01-03', 'balance': 100}
上述代码定义了一个自定义的排序函数sort_records
,该函数将每条交易记录的日期字符串转换为日期对象,并返回一个元组,其中包含日期对象和剩余余额。然后,使用sorted()
函数对交易记录列表进行排序,传入自定义的排序函数作为key
参数。最后,遍历排序后的交易记录并打印出来。