为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

慕妹3146593 2022-09-13 19:16:24
我有两个由氨基酸序列组成的列表(这不是生物学问题,但根据上下文进行了说明),其中包含完整字符串(完整序列)的子字符串(部分序列)。 包含完整的字符串,其中一些包含子字符串,而某些字符串不包含。List1List2List1这些列表很大,这就是为什么它们被制作出来,但现在我不知道如何将子字符串跟踪到完整的字符串。下面是使用我自己的数据集中的真实数据来修改两个列表的外观示例。对于 中包含的两个子字符串,应该有两个匹配项。我已确认匹配项在 中。List1List2List2List1 = ['QSLNQNVVSRTCPAVVSHRARRAVRVMATGSPLTFSKYQGLGNDFILIDNRHTSEPVVTPEQAVKICDRNFGVGGDGVIFALPPVGETDLTMRIFNSDGSEPEMCGNGIRCLAKFVADIDKSSPRKYKIHTLAGLIQPELLADGQVRVDMGAPILDGSKVPTTLTPTEGNTVVQQDLVVDGKTYKVTCVSMGNPHAVIYTCNGKTIKIDDLESDLAALGPKFERNTVFPARTNTEFVEVISPSHVRMVVWERGAGRTLACGTGACALVVAGILEGRVDRSKTCRVDLPGGPLQIEWSTVDNHIYMTGPAELVFGGSLRV', 'DMRISYERGGLEEAAFRGRDPMQVFDEWFKAAVAGKVCEEPNAISLASSNPSGQPSVRVVLLKGYDERGFVFYTNYSSRKGTELESGSAAFSIYWEKLQRQIRVEGTVEHVSEEESTAYFHSRPRGSQIGAWVSAQSQPCRNRGEMEARNAELQQRFSDESVPVPKPPHWGGYLIRPTRIEFWQGRPSRLHDRIRFRRPSPNESWVMERLQP']回馈的不是从我能看出的包含子字符串的项目。print(item)List1这是我关于堆栈溢出的第一个问题。如果需要更多详细信息,请告诉我。我提前感谢您的帮助。
查看完整描述

1 回答

?
德玛西亚99

TA贡献1770条经验 获得超3个赞

我不太确定你的要求是什么,但这里有一个2搜索方法的样本...


#Sub Strings

List1 = ["Apple", "Mulberry"]


# List of lists

List2 = [

    ["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']


查看完整回答
反对 回复 2022-09-13
  • 1 回答
  • 0 关注
  • 62 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信