在LoL中搜索列表列表?

问题描述 投票:-2回答:2

假设我有LoL,我希望能够找到一个子列表是否可以在这个大的LoL中找到,以及它出现了多少次。

这是LoL的一个示例(可能更大):

  [[[['a'], ['g']], [['g'], ['b']]], [[['g'], ['e']], [['e'], ['b']]], [[['f'], ['h']], [['g'], ['b']]], [[['g'], ['e']], [['g'], ['b']]], [[['e'], ['b']], [['g'], ['e']]]]

这是我可能正在搜索的LoL的一些示例:

  [[['a'], ['g']], [['g'], ['b']]]

  [['a'], ['g']]

  ['a']
python list search
2个回答
0
投票

您可以使用in检查搜索数据是否存在于列表列表中:

lol = [[[['a'], ['g']], [['g'], ['b']]], [[['g'], ['e']], [['e'], ['b']]], [[['f'], ['h']], [['g'], ['b']]], [[['g'], ['e']], [['g'], ['b']]], [[['e'], ['b']], [['g'], ['e']]]]

search_data1 = [[['a'], ['g']], [['g'], ['b']]]

if search_data1 in lol:
    print(search_data1)
else:
    print('Not found!')


0
投票

我认为字符串包含检查应该足够。

>>> l = [[[['a'], ['g']], [['g'], ['b']]], [[['g'], ['e']], [['e'], ['b']]], [[['f'], ['h']], [['g'], ['b']]], [[['g'], ['e']], [['g'], ['b']]], [[['e'], ['b']], [['g'], ['e']]]]
>>> str_l = str(l)
>>> str([[['a'], ['g']], [['g'], ['b']]]) in str_l
True
>>> str([['a'], ['g']]) in str_l
True
>>> str([[['a'], ['g']], [['x'], ['b']]]) in str_l
False

为了计数,您可以只使用str.count

>>> str_l.count(str([['g'], ['b']]))
3
© www.soinside.com 2019 - 2024. All rights reserved.