Python:如何定义多个相同类型的变量?
可能这个问题已经有人问过了,但我用这些词搜索时找不到答案。
在Python中有没有更快的方法来做到这一点?
level1 = {}
level2 = {}
level3 = {}
我试过
level1 = level2 = level3 = {}
但是那样似乎会创建对象的副本,这不是我想要的。而且
level1, level2, level3 = {}
会报错。
8 个回答
13
你可以这样做:
level1, level2, level3 = {}, {}, {}
18
level1 = level2 = level3 = {}
这段代码不会创建副本。它让不同的引用(level{1-3})指向同一个对象。你可以用列表推导式来代替:
level1, level2, level3 = [{} for dummy in range(3)]
或者用更容易理解的方式:
level1, level2, level3 = {}, {}, {}
15
你的变量命名可能说明你的设计还有改进的空间。与其用三个单独的变量,不如用一个列表来处理这些数据,这样可能会更好:
levels = [{}, {}, {}]