比较从列表

时间:2017-07-22 13:22:04

标签: python string list for-loop if-statement

我想比较两个不同于列表d1和d2的两个字符串。 如果来自d1的字符串与d2相似,那么它将返回相似的字符串。

这是我的代码:

d1 = [['learn'],['car']]
d2 = [['learn'],['motor']]

str1 = ', '.join(str(i) for i in d1)
str2 = ', '.join(str(j) for j in d2)

for i in str1:
    for j in str2:
        if i == j:
            print str1, str2

但输出是:

['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']
['learn'], ['car'] ['learn'], ['motor']

我希望输出为:

['learn','learn']

^它来自str1和str2中的类似字符串。

任何人都可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

这样的事情怎么样:

d1 = [['learn'],['car']]
d2 = [['learn'],['motor']]
for elem in d1:
  if elem in d2:
    print([elem[0],elem[0]])

答案 1 :(得分:0)

使用zip解决方案的简单方法。关于zip

for i,j in zip(d1,d2):
if i==j:
    print i,j