可能唯一的方法是比
d = [[] for x in xrange(n)]
是
from itertools import repeatd = [[] for i in repeat(None, n)]
它不必
int每次迭代都创建一个新对象,并且在我的计算机上快15%。
编辑 :使用NumPy,可以避免使用Python循环
d = numpy.empty((n, 0)).tolist()
但这实际上比列表理解要慢2.5倍。

可能唯一的方法是比
d = [[] for x in xrange(n)]
是
from itertools import repeatd = [[] for i in repeat(None, n)]
它不必
int每次迭代都创建一个新对象,并且在我的计算机上快15%。
编辑 :使用NumPy,可以避免使用Python循环
d = numpy.empty((n, 0)).tolist()
但这实际上比列表理解要慢2.5倍。