Python:重复函数,直到其返回值与某个函数匹配

时间:2017-03-01 09:08:37

标签: python-3.x

我有几个函数,如RandomNumber(n),它们返回一个数字x< Ñ

现在我想有可能编写函数,例如exclude,它允许我添加过滤表达式以排除某些数字。

例如:

exclude(RandomNumber(100), lambda x: x == 0)  

应调用RandomNumber(100),直到返回值为!= 0。这在python中甚至可能吗?

1 个答案:

答案 0 :(得分:1)

标准的SELECT t.id, t.description, t.URL FROM ( SELECT id, description, URL, ROW_NUMBER() OVER (PARTITION BY description, URL ORDER BY role) rn FROM yourTable ) t WHERE t.rn = 1 功能可能已经完成了您想要的功能。将其用作filter,其中filter(predicate, sequence)和序列将是使用predicate = lambda x: x != 0创建的数字列表。

你也可以这样做:

RandomNumber

只需调用该函数,直到它为非零。