标签: python
我是一个蟒蛇新手,我正在尝试为Eratosthenes的筛子编写代码。为此,我必须初始化一组空集。我试过这个factors=[set()]*1001,但这会产生一个浅的副本。我想要一个深层副本,以便factors[i]和factors[j]指向不同的集合。这样做有简单的语法吗?
factors=[set()]*1001
factors[i]
factors[j]
答案 0 :(得分:12)
factors = [set() for index in xrange(1001)]
答案 1 :(得分:7)
一如既往。
factors = [set() for x in range(1001)]
答案 2 :(得分:1)
这几乎是标准的做法。
factors = [set() for x in xrange(1001)]
最好使用xrange()代替range(),因为xrange()是一个生成器。