所以我试图找出如何使这个代码块工作,特别是如果我要迭代每个函数' func'那我该如何调用该函数呢?
def compare_two_hands(h1, h2):
determinants = [is_flush(h), is_two_pair(h), is_one_pair(h)]
for func in determinants:
if func(h1) or func(h2):
if func(h1) and func(h2):
...
else:
...
答案 0 :(得分:1)
调用函数的代码,正如您所编写的那样,将起作用。唯一的问题是您定义列表determinants
的方式。我假设这三个函数在同一名称空间的其他地方定义。在构建列表时引用它们时,只需丢失(h)
:
def is_flush(h):
...
def is_two_pair(h):
...
def is_one_pair(h):
...
def compare_two_hands(h1, h2):
determinants = [is_flush, is_two_pair, is_one_pair]
# rest of function as you already have it