如何将多个值输入到一个lin中的lambda函数中

2024-04-25 00:47:19 发布

您现在位置:Python中文网/ 问答频道 /正文

为了一个“有趣”的项目,我想做一个汽笛。我很有信心,逻辑都是好的,现在我只是停留在如何提供100个值在一个时间。到目前为止,我的情况是:

print(map(lambda x : return (lambda x : return 'fizzbuzz' if x%15 == 0 else return 'fizz') if x%3 == 0 else (return lambda x : (return 'fizzbuzz' if x%15 == 0 else return 'buzz') if x%5 == 0 else (return x)), range(1, 100)))

错误似乎就在最后,我是如何使用map函数的。我该如何给lambda函数一系列的值呢?你知道吗


Tags: 项目lambda函数mapreturnif时间情况
2条回答

我对你的代码做了一些编辑以使其正常工作。不应该在lambda函数中使用return关键字,也不应该为每个条件嵌套lambda。最后,您需要将输出转换为某种可打印格式(我选择了一个列表):

print(list(map(lambda x: 'fizzbuzz' if x%15 == 0 else 'fizz' if x%3 == 0 else 'buzz' if x%5 == 0 else x, range(1, 100))))

lambda函数不需要return语句。相反,将计算:之后的代码,并返回结果值:

final_values = map(lambda x:'fizzbuzz' if x%5 == 0 and x%3 == 0 else 'buzz' if x%5 == 0 else 'fizz' if x%3 == 0 else x, range(1, 100))

相关问题 更多 >