您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python,如何将参数传递给函数指针参数?

Python,如何将参数传递给函数指针参数?

您可以使用lambda

repeat(lambda: bar(42))

functools.partial

from functools import partial
repeat(partial(bar, 42))

或分别传递参数:

def repeat(times, f, *args):
    for _ in range(times):
        f(*args)

这种最终样式在标准库和主要的Python工具中非常常见。*args表示可变数量的参数,因此您可以将该函数用作

repeat(4, foo, "test")

要么

def inquisition(weapon1, weapon2, weapon3):
    print("Our weapons are {}, {} and {}".format(weapon1, weapon2, weapon3))

repeat(10, inquisition, "surprise", "fear", "ruthless efficiency")

请注意,为方便起见,我将重复次数放在前面。如果要使用该*args构造,它不能是最后一个参数。

(为完整起见,您还可以添加关键字参数**kwargs。)

python 2022/1/1 18:42:29 有290人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶