使用另一个列表测试列表的内容

所以我在用python编程,我有两个列表,一个命名为validurls,另一个命名为used 这是令我失望的代码:

for i in range(len(validurls[i])):
    for bb in range(len(used[bb])):
        if validurls[i] == used[bb]:
            o = 0
        else:
            used.append(validurls[i])

所以我在做的是:“ validurls”为我获取了一些URL,然后我希望它使用used.append(validurls [i])将新的URL放入“ used”中,但是我不希望在其中使用重复的URL。 。反正有这样做吗?

评论
  • luyao
    luyao 回复

    You're going to want to use in for this:

    
    array_one = [<your array>]
    array_two = [<your other array>]
    
    for entry in array_one:
      if entry not in array_two:
        array_two.append(entry)
    

    这样做是检查第一个数组中的每个条目是否在第二个数组中,如果不是,则将其注入第二个数组中。这将采用第一个唯一数组的所有内容,并将其添加到第二个数组中。

  • quo_et
    quo_et 回复

    You're probably better off using a set for these instead of a list since they enforce uniqueness on their own and make the combination very easy:

    In [149]: validurls = {'a', 'b', 'c', 'd'}
    
    In [150]: used = {'c', 'd', 'e'}
    
    In [151]: used |= validurls
    
    In [152]: used
    Out[152]: {'a', 'b', 'c', 'd', 'e'}