在列表列表中搜索值然后附加到空列表

我遇到过这个:


finalList = []

dateTime = "SCHEDULE: " + str(datetime.datetime.now().strftime("%H%M")) + "H"


for sublist in main_List:

    if dateTime in sublist[0]:

        finalList.append(sublist)

这是main_List它的值是一个具有列表值的列表,


[['SCHEDULE: 1509H', 'SCHEDULE: 1404H', 'ST: 1500', 'PING: www.google.com'], ['SCHEDULE: 1509H', 'SCHEDULE: 1700H', 'SCHEDULE: 2001H', 'SCHEDULE: 1817H', 'ST: 1169', 'FA']]

我的问题是,我怎样才能得到每个列表中SCHEDULE等于的值。dateTime


我认为我的这部分代码是错误sublist[0]的,因为它只获取列表的第一个索引。如何搜索中的值sublist?


偶然的你
浏览 129回答 2
2回答

莫回无

您需要更改shedule_date_time格式,因为您的子列表中包含尾随H。main_list = [['SCHEDULE: 1509H', 'SCHEDULE: 1404H', 'ST: 1500', 'PING: www.google.com'], ['SCHEDULE: 1509H', 'SCHEDULE: 1700H', 'SCHEDULE: 2001H', 'SCHEDULE: 1817H', 'ST: 1169', 'FA']]# adding extra "H" to match with your main_list datashedule_date_time = "SCHEDULE: " + str(datetime.datetime.now().strftime("%H%MH")) finalList = [sublist for sublist in main_list if shedule_date_time in sublist]

慕容708150

这里有两个问题:dateTime = "SCHEDULE: " + str(datetime.datetime.now().strftime("%H%M")这将返回类似'SCHEDULE: 1119'缺少尾随的内容H,与列表中的格式不匹配。你应该像这样迭代:for sublist in main_list:     if dateTime in sublist:          finalList.append(sublist)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python