如何通过在List1中使用子字符串进行搜索来查找List2中的完整字符串?

我有两个由氨基酸序列组成的列表(这不是生物学问题,但根据上下文进行了说明),其中包含完整字符串(完整序列)的子字符串(部分序列)。 包含完整的字符串,其中一些包含子字符串,而某些字符串不包含。List1List2List1


这些列表很大,这就是为什么它们被制作出来,但现在我不知道如何将子字符串跟踪到完整的字符串。


下面是使用我自己的数据集中的真实数据来修改两个列表的外观示例。对于 中包含的两个子字符串,应该有两个匹配项。我已确认匹配项在 中。List1List2List2


List1 = ['QSLNQNVVSRTCPAVVSHRARRAVRVMATGSPLTFSKYQGLGNDFILIDNRHTSEPVVTPEQAVKICDRNFGVGGDGVIFALPPVGETDLTMRIFNSDGSEPEMCGNGIRCLAKFVADIDKSSPRKYKIHTLAGLIQPELLADGQVRVDMGAPILDGSKVPTTLTPTEGNTVVQQDLVVDGKTYKVTCVSMGNPHAVIYTCNGKTIKIDDLESDLAALGPKFERNTVFPARTNTEFVEVISPSHVRMVVWERGAGRTLACGTGACALVVAGILEGRVDRSKTCRVDLPGGPLQIEWSTVDNHIYMTGPAELVFGGSLRV', 'DMRISYERGGLEEAAFRGRDPMQVFDEWFKAAVAGKVCEEPNAISLASSNPSGQPSVRVVLLKGYDERGFVFYTNYSSRKGTELESGSAAFSIYWEKLQRQIRVEGTVEHVSEEESTAYFHSRPRGSQIGAWVSAQSQPCRNRGEMEARNAELQQRFSDESVPVPKPPHWGGYLIRPTRIEFWQGRPSRLHDRIRFRRPSPNESWVMERLQP']

回馈的不是从我能看出的包含子字符串的项目。print(item)List1


这是我关于堆栈溢出的第一个问题。如果需要更多详细信息,请告诉我。我提前感谢您的帮助。


慕妹3146593
浏览 99回答 1
1回答

德玛西亚99

我不太确定你的要求是什么,但这里有一个2搜索方法的样本...#Sub StringsList1 = ["Apple", "Mulberry"]# List of listsList2 = [    ["Apple", "Grapefruit", "Guava"],    ["Banana", "Blueberry", "Grape"],    ["Lemon", "Lime"],    ["Loquat", "Lychee", "Mango"],    ["Mulberry", "Nectarine", "Strawberry"],    ["Pomegranate", "Raspberry"]]#a substring to search for.List3 = ["berry", "ime"]print("Search for whole matching strings", List1)for item in List2:    if any(x in item for x in List1):        print(item)print('\n Substring search for substrings', List3)for group in List2:    for item in group:        if any(sbs in item for sbs in List3):            print(group)            break # no need to keep searching the group和输出Search for whole matching strings ['Apple', 'Mulberry']['Apple', 'Grapefruit', 'Guava']['Mulberry', 'Nectarine', 'Strawberry'] Substring search for substrings ['berry', 'ime']['Banana', 'Blueberry', 'Grape']['Lemon', 'Lime']['Mulberry', 'Nectarine', 'Strawberry']['Pomegranate', 'Raspberry']
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python