有人可以向我解释为什么这是一个无效的语法?它出现在最后一行之前的行中。
import random
class BernoulliArm():
def __init__(self, p):
self.p=p
def draw(self):
if random.random()>self.p:
return 0.0
else:
return 1.0
means = [0.1, 0.1, 0.1, 0.1, 0.9]
n_arms = len(means)
random.shuffle(means)
arms = map(lambda (mu):BernoulliArm(mu), means)
arms[0].draw()
答案 0 :(得分:2)
在Python中,lambda
不在参数名称周围使用括号:
arms = map(lambda mu: BernoulliArm(mu), means)