我使用python中的gambit以博弈论的方式模拟一个世界。博弈的一个构造是保存“结果”以供每个参与者做出一组决定。其形式如下:
game[d1,d2,d3,...,dn][n] = payoff
其中d1
是玩家1做出的决策的索引,d2
是玩家2做出的决策的索引,依此类推,n
是为其存储payoff
的玩家的索引。你知道吗
现在,可能有不同数量的玩家,因此传递到game
对象的索引的维度可能会改变
如何生成从[0,0,...,0]
到[8,8,...,8]
(其中dimension=number of players=n)的序列,以便将它们存储到[d1,d2,d3,...,dn]
?你知道吗
看看python的
itertools
模块。听起来product
函数可以做您想做的事情。你知道吗示例:
给出所有长度为3且包含两个元素的列表
itertools
还有很多其他的可能性,特别是它还提供了permutations
和combinations
。你知道吗相关问题 更多 >
编程相关推荐