我有一个列表,其中包含信用卡付款计划等数据:
[ [pay_number, pay_date, pay_amount], [pay_number, pay_date, pay_amount], e.t.c ]
如何从中获取下一个pay_date?
答案 0 :(得分:0)
你只需要遍历列表:
thelist = [ [pay_number, pay_date, pay_amount], [pay_number, pay_date, pay_amount], ... ]
for sub_list in thelist:
current_pay_date = sub_list[1]
# do something with current_pay_date
如果您想访问下一个pay_date
:
for i in range(len(thelist)):
sub_list = thelist[i]
current_pay_date = sub_list[1]
next_sub_list = thelist[i+1]
next_pay_date = next_sub_list[1]
希望这就是你要找的东西。
答案 1 :(得分:0)
您可以使用min
功能通过自定义key
功能从列表中获取与当前最接近的元素:
>>> items = [[1, datetime.date(2014, 2, 28), 1], [2, datetime.date(2014, 2, 7), 2], [3, datetime.date(2014, 2, 14), 3]]
>>> min(items, key=lambda x: x[1] - datetime.date.today())
[2, datetime.date(2014, 2, 7), 2]