我有一个全局列表和一个全局映射字典
some_list_of_objects = [] mapping = {i.attr1: i.attr2 for i in some_list_of_objects}
当我的程序运行时,新对象会添加到some_list_of_objects中。在将新对象添加到列表后,我需要更新我的映射字典,因为在程序的后期,我需要访问这个更新的映射字典。
我知道如果我只是简单地复制并运行映射脚本,这会很容易。然而,我想要的是一个在调用时更新全局映射字典的函数。
解决方案是:
def update_mapping(): global mapping mapping = {i.attr1: i.attr2 for i in some_list_of_objects}
现在,每当调用update_mapping()时,映射dict都会更新。