可能是重复的,但至少通过搜索这些术语我找不到答案.
有没有更快的方法在Python中执行此操作?
level1 = {}
level2 = {}
level3 = {}
Run Code Online (Sandbox Code Playgroud)
我试过了
level1 = level2 = level3 = {}
Run Code Online (Sandbox Code Playgroud)
但这似乎创建了对象的副本,这不是我想要的.和
level1, level2, level3 = {}
Run Code Online (Sandbox Code Playgroud)
抛出错误.
nil*_*ils 16
level1 = level2 = level3 = {}
Run Code Online (Sandbox Code Playgroud)
不创建副本.它允许将级别{1-3}引用到同一对象.您可以使用列表理解:
level1, level2, level3 = [{} for dummy in range(3)]
Run Code Online (Sandbox Code Playgroud)
或更具可读性:
level1, level2, level3 = {}, {}, {}
Run Code Online (Sandbox Code Playgroud)
Mar*_*ers 14
您的变量命名可能是您的设计可以改进的标志.使用列表而不是三个单独的变量可能更好:
levels = [{}, {}, {}]
Run Code Online (Sandbox Code Playgroud)