我正在读取两个csv文件,其中python列表中有多个列,每个列在不同的列表中,例如rss-cz和landings。
rss_CZ = ['rs CZ',
'product-a',
'product-b-all-in-one-380-ml',
'product-c-multi',
....]
landings = [' landing pages',
'/products-c-60-ml-sale.html',
'/product-a-60-120-ml.html',
'/product-240-380-ml.html',
.....]
然后,我想比较上面的列表中的相似元素,并将索引(对于两个列表)保存在找到相似元素的位置。看起来很直截了当,我试着说:
# ------- indexes of hits in rss_CZ list
set_landing = set(landings)
hits_rss_CZ = [index for index, item in enumerate(rss_CZ) if item in set_landing]
# ------ indexes of hits in list landings
set_rss_CZ = set(rss_CZ)
hits_landings = [index for index, item in enumerate(landings) if item in set_rss_CZ]
但没用,我只得到两张空名单。
如果我尝试这种“丑陋”的方法,它是有效的,不是完全正确的,但我得到了一些结果:
for i in rss_CZ:
for j in landings:
if i in j: # if the rss is in the landing pages
hits_landings.append(landings.index(j)) #indexes of hits in rss_CZ list
hits_rss_CZ.append(rss_CZ.index(i)) #indexes of hits in list landing
为什么第一种方法没有产生任何结果?或者如何使第二种方法更好?谢谢您!