根据时间排序列表

2024-09-20 05:36:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个清单:

time_sentence = 
[[11000, 'sen1'], [18000, 'sen2'], [24000, 'sen3'], [40000, 'sen4'], [54000, "sen5"], [61000, "sen6"]]


time_intervalls = [11000, 25000,50000,70000]

第一个列表是(时间,字符串)的二维数组,第二个列表是特定时间戳的列表。现在,我想知道,我如何能提取出所有的句子,根据他们的时间在两个时间戳之间?你知道吗

预期结果:

sentences= [['sen1','sen2','sen3'],['sen4'],['sen5','sen6']]

Tags: 字符串列表time时间sentences数组sentence句子
1条回答
网友
1楼 · 发布于 2024-09-20 05:36:36

你可以试试这个

time_sentence = [[11000, 'sen1'], [18000, 'sen2'], [24000, 'sen3'], [40000, 'sen4'], [54000, "sen5"], [61000, "sen6"]]
time_intervals = [11000, 25000, 50000, 70000]

l = len(time_intervals)
sentences = []

for index,obj in enumerate(time_intervals):

    current = obj
    sentence = []

    if index < (l - 1):
        next_ = time_intervals[index + 1]

        for row in range(len(time_sentence)):
            if current <= time_sentence[row][0] <= next_:
                sentence.append(time_sentence[row][1])

        if sentence != []:
            sentences.append(sentence)

print(sentences)

引用:Python - Previous and next values inside a loop

相关问题 更多 >