我正在写一个函数,帮助我计算一个可变边数的骰子和一个可变边数的可能结果(例如,两个六边骰子和一个四边骰子的总和),我被难住了一段时间
例如,滚动两个三面模具应输出一个包含所有9种可能组合的阵列:
[[1,1],
[1,2],
[1,3],
[2,1],
(etc.)
[3,2],
[3,3]]
我也不太明白。我已经设法生成了要枚举的范围,但我不能完全做到
dice = [6,6]
diceRanges = [range(0, die) for die in dice]
diceIndex = [0 for die in dice]
outcomes = []
for idx, rng in enumerate(diceRanges):
for var in rng:
diceIndex[idx] = var
outcomes.append([val for val in diceIndex])
outcomes
我见过一些事情,但从来没有像看上去那么简单
干杯
仅使用numpy
使用itertools很简单:
相关问题 更多 >
编程相关推荐