python - Access to value of variable with dynamic name -


i found several topics discussed dynamical creating of single variables in loops bad practice , better use dictionary.

in case don't need create them dynamically, want access them in loop.

i don't want use dictionary them, because these variables used in lot of places in code, , in 1 place need such dynamic access.

idea example:

car_pos = 1; man_pos = 10 car_vel = 100; man_vel = 5  elm in ['car', 'man']:     elm_pos = elm + '_pos'     elm_vel = elm + '_vel'     # want values of elements such names here     print(elm_pos, elm_vel)  # desired output: # (1, 100) # (10, 5) 

variable names terrible way relate pieces of information. there nothing linking man_pos , man_vel except both happen start man. other totally separate. python has better ways of bundling elements these together.

in case, man , car should objects attributes pos , vel.

class thing:     def __init__(self, pos, vel):         self.pos = pos         self.vel = vel  # assume both men , cars move in 1 dimension man = thing(10, 2)    car = thing(100, -5) 

then loop simply:

for item in [car, man]:     print(item.pos, item.vel) 

do not way you're trying it. lead tears -- if not yours, of people have @ code.


Comments

Popular posts from this blog

c++ - Delete matches in OpenCV (Keypoints and descriptors) -

java - Could not locate OpenAL library -

sorting - opencl Bitonic sort with 64 bits keys -