如何在lambda表达式中导入包?

时间:2018-02-13 16:03:46

标签: python-3.x lambda

我不熟悉Python的朋友想要创建一个函数,该函数返回在滚动n次m次时至少获得六个面的概率。

而不是无聊的P = 1-(5./6)**n,我决定把他作为一个恶作剧吓唬他:

import random
throw_dice = lambda n, m: round(sum(any(random.randint(1,6) == 6 for die in range(n)) for trial in range(m))/m,5)

我是否可以通过将import random组合到lambda表达式中来进一步压缩它,以便我最终只得到一行代码?

1 个答案:

答案 0 :(得分:0)

如果你只想要一行代码,你可以像这样使用分号:

import random; throw_dice = lambda n, m: round(sum(any(random.randint(1,6) == 6 for die in range(n)) for trial in range(m))/m,5)