如果一个二维列表中子列表中的第0个元素相同,就把相同列表中的第0个和第2个元素取出来并生成一个新的列表
时间: 2024-04-11 14:28:39 浏览: 12
你可以使用字典来实现这个功能。首先,遍历二维列表中的每个子列表,如果子列表的第0个元素不在字典中,则将其作为键,将对应的第2个元素作为值添加到字典中。如果子列表的第0个元素已经在字典中,则将对应的第2个元素追加到字典中对应键的值中。最后,将字典转换为列表即可得到新的列表。以下是一个示例代码:
```python
def extract_elements(lst):
result = {}
for sublst in lst:
if sublst[0] not in result:
result[sublst[0]] = [sublst[2]]
else:
result[sublst[0]].append(sublst[2])
new_lst = [[key, value] for key, value in result.items()]
return new_lst
# 示例输入
lst = [[1, 2, 3], [1, 4, 5], [2, 6, 7], [1, 8, 9]]
# 调用函数得到结果
new_lst = extract_elements(lst)
print(new_lst)
```
输出结果为:
```
[[1, [3, 5, 9]], [2, [7]]]
```
以上代码会将输入的二维列表 `lst` 中每个子列表中的第0个元素相同的子列表的第0个和第2个元素取出来,并生成新的列表 `new_lst`。注意,这里的第2个元素被存储在一个列表中,因为可能有多个子列表的第0个元素相同。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)