gpt4 book ai didi

python - 如何以随机顺序执行多个功能?

转载 作者:行者123 更新时间:2023-11-28 17:55:38 27 4
gpt4 key购买 nike

我定义了四个函数。这些函数返回相同的变量但具有不同的参数。

这是一个简单的例子:

def func1(studentID, homework1, T1, score):
if len(homework1) > T1:
score[studentID] = 1
else:
score[studentID] = 0
return score

def func2(studentID, homework2, T2, attendance, score):
if len(homework2) > T2 and attendance == 1:
score[studentID] = 1
else:
score[studentID] = 0
return score

现在我需要以随机顺序执行这些函数,即有时先执行 func1 然后再执行 func2,但有时否则。我只知道如何在没有参数的情况下执行此操作并返回如下:

import random
functions = [func1, func2]
random.shuffle(functions)
for i in functions:
i()

但不知道如何使用参数和返回值。

最佳答案

您可以使用 lambda 来绑定(bind)参数:

import random
param1 = 123
param2 = 456
functions = [lambda : func1(param1), lambda : func2(param2)]
random.shuffle(functions)
results = [ i() for i in functions ]

关于python - 如何以随机顺序执行多个功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58638235/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com