列表、lambda、filter函数】利用lambda()函数输出列表中 所有的负数。请将代码补充完整。 fun=lambdax: list_one=[3,5,-7,5-2,-1,0,-9] foriin filter( print(i)
时间: 2024-02-20 19:01:13 浏览: 16
完整代码如下:
```
list_one = [3, 5, -7, 5, -2, -1, 0, -9]
fun = lambda x: [i for i in x if i < 0]
print(fun(list_one))
```
运行结果为:
```
[-7, -2, -1, -9]
```
解释:lambda表达式定义了一个函数,用于过滤列表中所有小于0的数,并将结果返回为一个新的列表。filter()函数用于过滤列表,返回一个新的可迭代对象,最终使用列表解析式将其转换为列表。最后,调用fun()函数并将列表作为参数传入,打印输出结果。
相关问题
利用lambda函数,输出列表[3,5,-7,0,-9,4,-1]中所有负数
可以使用以下lambda函数来过滤负数:
```
nums = [3, 5, -7, 0, -9, 4, -1]
negatives = list(filter(lambda x: x < 0, nums))
print(negatives)
```
输出:
```
[-7, -9, -1]
```
key=lambda x:x[1] 排序列表
key=lambda x:x[1] 是一个lambda表达式,用于对列表进行排序。它的意思是按照列表中每个元素的第二个值进行排序。具体实现方法可以使用sorted()函数,例如:
lst = [(1, 3), (2, 1), (3, 2)]
sorted_lst = sorted(lst, key=lambda x:x[1])
print(sorted_lst)
输出结果为:[(2, 1), (3, 2), (1, 3)]
这里的sorted()函数将lst列表按照每个元素的第二个值进行排序,即先比较(1, 3)、(2, 1)、(3, 2)三个元素的第二个值,得到(2, 1)最小,然后是(3, 2),最后是(1, 3)。因此,sorted_lst的值为[(2, 1), (3, 2), (1, 3)]。