我有一个小问题(我希望)与Python (3.8)
假设我们有一个清单:
mylist=['item1','item2','item3']现在,假设我用键:value对创建了一个dict:
mydict={'key1':mylist}然后:
print(str(mydict))适当产出:
{'key1':['item1','item2','item3']}但是,如果我现在将一个值添加到我的列表中:
mylist.append('item A')我注意到:
print(str(mydict))现产出:
{'key1':['item1','item2','item3','item A']}我怎么才能避免这种情况?我不想更新名单.换句话说,我希望mydict条目包含mylist的实例(在追加之前).
发布于 2022-06-29 19:53:20
使用以下内容创建列表的副本:
mydict={'key1':mylist.copy()}这样,字典将包含一个新的、单独的项目列表。
发布于 2022-06-29 19:52:45
一个简单的解决方案是将初始mylist重新分配到另一个变量(例如mylist0),然后将其用于字典赋值,这样它就不会更新。只要您在循环中重新分配mylist0,这也可以在循环中工作(如果这是意图的话)。
https://stackoverflow.com/questions/72806894
复制相似问题