我尝试在代码的开头存储一个词典模板,大多数功能将使用该模板:
我把所有的客户和他们的用户都塞满了。然后,代码的每个部分都可以复制此字典并产生其自己的输出。目标是每个输出将具有相同的“基本”字典结构,如模板,在其中可以修改“无”。
对于使用此词典的每个过程,我使用以下内容:
process1dict = clientdict
# processing 1
output1dict = ... #modified version of original clientdict, the None values have been replaced by dictionaries/lists
process2dict = clientdict
# processing 2
output2dict = ... #same here but could be different
Run Code Online (Sandbox Code Playgroud)
我的问题是,每次复制到流程中时,先后顺序都会改变!我注意到由于None初始值的cliendict变化,它在每个过程之后都会改变(取决于每个过程的输出)。
编辑:我找到了副本库,但copy()似乎无济于事。我将尝试使用deepcopy(),但是为什么copy()不起作用?为什么deepcopy()会呢?