2015-02-10 99 views
-1

有没有一种方法可以编写一个谓词函数来比较两个字符串并查看哪一个更大?现在我有谓词函数中的两个参数

def helper1(x, y): 
    return x > y 

不过,我想使用的功能以这种方式,

new_tuple = divide((helper1(some_value, l[0]),l[1:])

请注意,上面的函数调用可能是错误的,因为我的辅助函数,是不完整的。但要点是我试图比较两个项目,看看是否大于另一个,并且项目是l[1:]l[0]

除法是一个函数,给定一个谓词和一个列表,将该列表分成一个有两个列表的元组,基于谓词的出现。鸿沟很长,所以我不认为我应该在这里发布。

因此,如果给定一个谓词应该只带一个参数,那么我应该如何编写它以便它需要一个参数?

回答

1

你应该写一个闭包。

def helper(x): 
    def cmp(y): 
    return x > y 
    return cmp 

... 
new_tuple = divide(helper1(l[0]), l[1:]) 
...