例如,假设我有一个要合并的集合的无限数量:
bigSet = bigSet.union(<listOfSets>)
我可以简单地将每一组折叠起来,即:
^{pr2}$另一种选择是使用eval函数:
stringTuple = str(listOfSets)
stringTuple = stringTuple.strip("[")
stringTuple = stringTupl.strip("]")
bigSet = eval("bigSet.union(" + stringTuple + ")")
我问这个问题的原因是,在python2.6中,将多个参数传递给union(而不是在一个union列表中折叠它)优化了union,以便首先对最小的集合进行联合。因为python中的集合通常是非常大的数据集的最佳数据结构(特别是当它们需要被联合或相交时),而且似乎很常见的情况是需要传入不确定数量的集合,因此应该有一种更优的方法来实现这一点。如果没有,哪个更快:使用eval还是在集合中折叠?在
^{cd1>}接受任意数量的集作为参数:
因此,可以将集合列表与
^{pr2}$Note the asterisk。
看起来你想把集合列表扩展成函数的参数列表
^{1}$相关问题 更多 >
编程相关推荐