I can do this in C, but I haven’t come across it in Python.
Say I have a few variables:
JavaScript
x
6
1
variable1 = None
2
variable2 = None
3
variable3 = None
4
variable4 = None
5
variable5 = None
6
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:
JavaScript
1
6
1
variable1 = 1
2
variable2 = 2
3
variable3 = 3
4
variable4 = 4
5
variable5 = None
6
Advertisement
Answer
While you technically can modify local variables, doing so is very discouraged. Instead, you should store those values in a dictionary instead:
JavaScript
1
13
13
1
variables = {
2
variable1: None,
3
variable2: None,
4
variable3: None,
5
variable4: None,
6
variable5: None
7
}
8
9
values = [1, 2, 3, 4]
10
11
for i, value in enumerate(values):
12
variables['variable' + (i + 1)] = value
13
But of course, if all those variables differentiate is the number, you can simply use a list as well:
JavaScript
1
6
1
# This will create a list with 5 None values, i.e. variables[0] .. variables[4]
2
variables = [None] * 5
3
4
for i, value in enumerate(values):
5
variables[i] = value
6