将方法作为函数参数传递

Snake_Plissken

是否可以将方法作为函数参数传递?

在学习正则表达式以及如何使用它们时,我决定尝试创建一个函数,我可以使用所使用的不同正则表达式方法反复调用该函数:

    def finder (regex, query, method):
        compiled = re.compile(regex)
        if compiled.method(query) is True:
            print "We have some sort of match!"
        else:
            print "We do not have a match..."

当我尝试它时,我得到一个错误的错误:即使我将“ search”作为第三个参数(即使在编译时也可以调用),“ _ sre.SRE_pattern”却没有属性“ method”。我在做什么错或对这里的理解不完全?

算了吧

method作为字符串传递,并使用getattr

def finder (regex, query, method):
    compiled = re.compile(regex)
    if getattr(compiled, method)(query):
        print "We have some sort of match!"
    else:
        print "We do not have a match..."

finder(regex, query, "search")

另外,使用

if condition

代替

if condition is True

因为当compiled.method(query)找到匹配项时,它会返回一个匹配对象,而不是True

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将类方法作为函数参数传递

来自分类Dev

将函数作为参数传递给方法

来自分类Dev

将函数作为参数传递

来自分类Dev

将函数作为参数传递

来自分类Dev

将通道作为函数中的参数传递的不同方法

来自分类Dev

将函数作为参数传递给“ this”的更好方法

来自分类Dev

将参数化的构造函数作为方法引用传递

来自分类Dev

将lambda函数作为参数传递给需要接口的方法

来自分类Dev

将指向类方法的指针作为函数参数传递

来自分类Dev

将指向类方法的指针作为函数参数传递

来自分类Dev

TypeScript-将匿名函数作为方法参数传递

来自分类Dev

Python:将方法作为函数参数传递时的属性错误

来自分类Dev

将lambda函数作为参数传递给需要接口的方法

来自分类Dev

将函数作为参数传递给函数

来自分类Dev

将函数作为函数参数传递

来自分类Dev

将函数作为参数传递给函数

来自分类Dev

将函数作为APL中的参数传递

来自分类Dev

无法将函数作为mixin的参数传递

来自分类Dev

将矩阵作为参数传递给函数

来自分类Dev

Scala:将咖喱函数作为参数传递

来自分类Dev

将命名函数作为参数传递

来自分类Dev

将函数作为参数传递给操作

来自分类Dev

将函数调用作为参数传递

来自分类Dev

将代码作为函数参数传递

来自分类Dev

将函数作为最终参数传递

来自分类Dev

将函数作为参数传递(Lambda)

来自分类Dev

将嵌套函数作为参数传递

来自分类Dev

将多维数组作为函数参数传递

来自分类Dev

将函数作为参数传递并重载