【发布时间】:2020-10-05 14:18:58
【问题描述】:
我有 2 个字符串列表:
['Tipo de fertilizante',
'N',
'P2O5',
'K2O',
'S',
'CaO',
'MgO',
'Zn',
'Solubilidad g/100cc H2O',
'Precio (€/100 kg)',
'€/UF (N)',
'€/UF (P2O5)',
'€/UF (K2O)',
'€/UF (S)',
'€/UF (CaO)',
'€/UF (MgO)',
'JERARQUIA - (N)',
'JERARQUIA - (P2O5)',
'JERARQUIA - (K2O)',
'JERARQUIA - (S)',
'JERARQUIA - (CaO)',
'JERARQUIA - (MgO)',
'Abono']
这是第二个:
['JERARQUIA - (N)',
'JERARQUIA - (P2O5)',
'JERARQUIA - (K2O)',
'JERARQUIA - (S)',
'JERARQUIA - (CaO)',
'JERARQUIA - (MgO)']
我想获取包含在第二个元素中的第一个元素,因此所需的结果是:
['N',
'P2O5',
'K2O',
'S',
'CaO',
'MgO',
'JERARQUIA - (N)',
'JERARQUIA - (P2O5)',
'JERARQUIA - (K2O)',
'JERARQUIA - (S)',
'JERARQUIA - (CaO)',
'JERARQUIA - (MgO)',]
我查看了this 的答案,这是我尝试过的:
[s for s in list_1 if any(i in s for i in list_2)]
但我得到的结果是:
['JERARQUIA - (N)',
'JERARQUIA - (P2O5)',
'JERARQUIA - (K2O)',
'JERARQUIA - (S)',
'JERARQUIA - (CaO)',
'JERARQUIA - (MgO)']
这不是我想要的。经过很多次和第四次,我仍然不明白如何才能达到我需要的结果。
我该怎么做?
非常感谢您。
【问题讨论】:
-
'P2O5'等不在第二个列表中,为什么这些也会被返回? -
@Sayse 它们是子字符串。好好看看:)
标签: python python-3.x string list match