I can do this in C, but I haven’t come across it in Python.
Say I have a few variables:
variable1 = None variable2 = None variable3 = None variable4 = None variable5 = None
and I have list of values [1, 2, 3, 4]
how can I assign the values to the variables with a single loop so I get the following result:
variable1 = 1 variable2 = 2 variable3 = 3 variable4 = 4 variable5 = None
Advertisement
Answer
While you technically can modify local variables, doing so is very discouraged. Instead, you should store those values in a dictionary instead:
variables = { variable1: None, variable2: None, variable3: None, variable4: None, variable5: None } values = [1, 2, 3, 4] for i, value in enumerate(values): variables['variable' + (i + 1)] = value
But of course, if all those variables differentiate is the number, you can simply use a list as well:
# This will create a list with 5 None values, i.e. variables[0] .. variables[4] variables = [None] * 5 for i, value in enumerate(values): variables[i] = value