python的lambda表达式实现二维列表去掉重复元素
时间: 2023-07-02 08:10:03 浏览: 88
可以使用lambda表达式和set来实现二维列表去掉重复元素,具体代码如下:
```python
lst = [[1, 2], [2, 3], [1, 2], [4, 5], [2, 3]]
new_lst = list(set(map(lambda x: tuple(x), lst)))
new_lst = list(map(lambda x: list(x), new_lst))
print(new_lst) # [[1, 2], [4, 5], [2, 3]]
```
其中,`map(lambda x: tuple(x), lst)` 将二维列表中的每个元素转换为tuple类型,`set`会自动去重,最后再将tuple转换为list即可。
相关问题
python的lambda表达式判断二维列表某一项是否一样
可以使用lambda表达式和列表推导式来判断二维列表某一项是否一样。例如,假设要判断二维列表中第二列是否都为相同的值,可以使用如下代码:
```python
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
# 判断第二列是否都为相同的值
result = all(x[1] == matrix[0][1] for x in matrix)
print(result)
```
输出结果为:`False`,因为第二列不是都相同的值。
如果要判断第三行是否都为相同的值,可以将代码修改为:
```python
# 判断第三行是否都为相同的值
result = all(x == matrix[2][0] for x in matrix[2])
print(result)
```
输出结果为:`False`,因为第三行不是都相同的值。
python二维列表排序
你可以使用Python内置的sorted()函数来对二维列表进行排序。以下是一个示例代码,它将二维列表按照子列表中第二个元素的大小进行升序排序。
```python
my_list = [[3, 7], [1, 2], [4, 5], [9, 0]]
sorted_list = sorted(my_list, key=lambda x: x[1])
print(sorted_list)
```
输出结果为:
```python
[[9, 0], [1, 2], [4, 5], [3, 7]]
```
在这个示例代码中,我们使用了lambda表达式来指定排序的关键字,即每个子列表中的第二个元素。如果你想要按照第一个元素进行排序,只需要将lambda表达式中的x[1]改为x[0]即可。如果你想要按照降序排序,可以在sorted()函数中添加reverse=True参数。