Creando nuevas variables en bucle, con nombres de la lista, en Python

¿Cómo crear nuevas variables con nombres de la lista? Esta:

name = ['mike', 'john', 'steve'] age = [20, 32, 19] index = 0 for e in name: name[index] = age[index] index = index+1 

por supuesto no funciona. ¿Qué tengo que hacer?

Quiero hacer esto:

 print mike >>> 20 print steve >>> 19 

Creo que los dictionaries son más adecuados para este propósito:

 >>> name = ['mike', 'john', 'steve'] >>> age = [20, 32, 19] >>> dic=dict(zip(name, age)) >>> dic['mike'] 20 >>> dic['john'] 32 

Pero si aún desea crear variables sobre la marcha, puede usar globals()[] :

 >>> for x,y in zip(name, age): globals()[x] = y >>> mike 20 >>> steve 19 >>> john 32 

Puedes usar globals() :

 globals()[e] = age[index] 

Generalmente, sin embargo, no quieres hacer eso; Un diccionario es mucho más conveniente.

 people = { 'mike': 20, 'john': 32, 'steve': 19 } 
 name = ['mike', 'john', 'steve'] age = [20, 32, 19] for i in range(len(name)): exec("%s = %d" %(name[i], age[i])) print(mike) print(john) print(steve)