迭代正在跳过列表中的元素

时间:2018-01-26 16:04:47

标签: python-3.x

我目前正在进行代码争夺的挑战之一,基本上挑战在于找到两个字符串之间的常见字符数。我想出了下面的解决方案。我已经通过了挑战,但我无法弄清楚为什么我必须两次迭代列表而不是在每种情况下。提前感谢任何解释。

df1.registerTempTable("df1t")
df2.registerTempTable("df2t")

 spark.sql("select d1.total - d2.total as difference from df1t as d1 inner 
 join df2t as d2 on d1.date = d2.date \
 and d1.product_id =d2.product_id ").show(truncate = False)

1 个答案:

答案 0 :(得分:1)

你只需尝试这个

lis=["abcdef","abcdv"]

match=[i for i in lis[0]if i in lis[1]]

它发出了

  

[' a',' b',' c',' d']

修改

只进行一次检查

>>> a
['abcc', 'abbbc']
>>> check0=list(a[0])
>>> check1=list(a[1])
>>> match=list()
>>> for i in check0:
    if i in check1:
        check1.remove(i)
        match.append(i)

Out Put

  

[' a',''' c']