我试过这个:
listing = []
entry = [0.0]*2
entry[0] = 1.0
entry[1] = 2.0
listing.append(entry) # My first entry
entry[0] = 2.0
entry[1] = 3.0
listing.append(entry) # Another entry
上述方法不起作用。保留了相同的条目指针,因此更新条目也会更新清单的[1.0,2.0]条目。我可以用它来工作:
entry[0] = 1.0
entry[1] = 2.0
listing.append(entry) # My first entry
entry = [0.0]*2
entry[0] = 2.0
entry[1] = 3.0
listing.append(entry) # Another entry
entry = [0.0]*2
但这看起来很笨拙。有没有更干净的方法?你知道吗
更新:(这就切断了这个重复问题的喋喋不休) 至少对于Python 3.X用户来说,最好的方法是:
listing.append(entry.copy())
假设您希望将条目保留为列表(但出于我怀疑的目的,我建议使用namedtuple):
您可以内联创建条目
而不是:
用途:
相关问题 更多 >
编程相关推荐