我有两个较大的嵌套列表,长度不相同,列表包含重复的数据。其中A列表元素为两个字符串,B列表元素为两个字符串和一个浮点数。两个列表的字符串部分相同,怎么快速对比两个列表,把B列表中与A列表字符串相同的元素和对应的浮点数提取出来
时间: 2024-04-10 19:26:58 浏览: 44
你可以使用嵌套列表的推导式和条件判断来进行快速对比和提取。以下是一个示例代码,演示了如何对比两个列表并提取出B列表中与A列表字符串相同的元素和对应的浮点数:
```python
A = [["str1", "str2"], ["str3", "str4"]] # A列表
B = [["str1", "str2", 1.0], ["str5", "str6", 2.0], ["str3", "str4", 3.0]] # B列表
result = [[b[0], b[1], b[2]] for a in A for b in B if a[0] == b[0] and a[1] == b[1]]
```
在这个示例代码中,我们使用了两个嵌套的列表推导式。外层的推导式遍历A列表中的元素,内层的推导式遍历B列表中的元素。通过条件判断`a[0] == b[0] and a[1] == b[1]`,我们筛选出了与A列表字符串相同的元素。最终,将符合条件的元素和对应的浮点数存储在`result`列表中。
希望这个示例代码能够帮助到你。如果你有任何疑问,请随时向我提问。
阅读全文