这一定很简单,但作为一个偶尔的 python 用户,与一些语法作斗争。这有效:
def perms (xs):
for x in itertools.permutations(xs): yield list(x)
但这不会解析:
def perms (xs): for x in itertools.permutations(xs): yield list(x)
单行函数语法是否有一些限制?正文定义 (for...) 本身可以是两行或一行,而 def: 可以是带有简单正文的一或两行,但将两者结合起来会失败。有没有排除这个的语法规则?