怎么获得列表中的一段数据?

只要 20211130 11:30:00 到 20211201 11:30:00 的数据
代码 简单点,效率高点

l=[['20211130 10:30:00', 17.68], ['20211130 11:30:00', 17.46], ['20211130 14:00:00', 17.48], ['20211130 15:00:00', 17.47], ['20211201 10:30:00', 17.71], ['20211201 11:30:00', 17.77], ['20211201 14:00:00', 17.64], ['20211201 15:00:00', 17.67]]

得到后是 l1=[['20211130 11:30:00', 17.46], ['20211130 14:00:00', 17.48], ['20211130 15:00:00', 17.47], ['20211201 10:30:00', 17.71], ['20211201 11:30:00', 17.77]]

推导式只要一行即可,我l2方便与l1验证相等:

>>> l=[['20211130 10:30:00', 17.68], ['20211130 11:30:00', 17.46], ['20211130 14:00:00', 17.48], ['20211130 15:00:00', 17.47], ['20211201 10:30:00', 17.71], ['20211201 11:30:00', 17.77], ['20211201 14:00:00', 17.64], ['20211201 15:00:00', 17.67]]
>>> l1=[['20211130 11:30:00', 17.46], ['20211130 14:00:00', 17.48], ['20211130 15:00:00', 17.47], ['20211201 10:30:00', 17.71], ['20211201 11:30:00', 17.77]]
>>> l2 = [i for i in l if '20211130 11:30:00'<=i[0]<='20211201 11:30:00']
>>> l2 == l1
True
>>> 

img


l = [['20211130 10:30:00', 17.68], ['20211130 11:30:00', 17.46], ['20211130 14:00:00', 17.48],
     ['20211130 15:00:00', 17.47], ['20211201 10:30:00', 17.71], ['20211201 11:30:00', 17.77],
     ['20211201 14:00:00', 17.64], ['20211201 15:00:00', 17.67]]
l1 = [['20211130 11:30:00', 17.46], ['20211130 14:00:00', 17.48], ['20211130 15:00:00', 17.47],
      ['20211201 10:30:00', 17.71], ['20211201 11:30:00', 17.77]]
l2=[]
for i in l:
    if i[0]>='20211130 11:30:00' and i[0]<='20211201 11:30:00':
        l2.append(i)
print(l1==l2)