【发布时间】:2020-12-19 08:56:18
【问题描述】:
对于以下列表:
races=['R1', 'R2', 'R3', 'R4', 'R1', 'R2', 'R1', 'R2', 'R3', 'R4', 'R5']
我想把它分为:
list_1=['R1', 'R2', 'R3', 'R4']
list_2=['R1', 'R2']
list_3=['R1', 'R2', 'R3', 'R4', 'R5']
所以 - 在使用列表推导时,只要“R”数字开始下降,就会开始一个新列表。 我对 list_1 的尝试是:
list_1=[i for i in races if int(i.split('R')[1])>int((i-1).split('R')[1])]
这不太行 - 加上如何处理 list_2 和 list_3?
【问题讨论】:
-
我认为部分答案包含在stackoverflow.com/q/1373164/3001761
标签: python list list-comprehension