在搞多线程时,想要批量给线程命名。在网上搜了半天。用exec、eval无果后。
createVar = locals()
myVarList = [] # 存放自己创建的变量
for i in range(9):
createVar['thread'+ str(i)] = i
myVarList.append(createVar['thread'+ str(i)]) # 这样,变量就在列表里了!
# PS :因为locals()本来就是个字典
# 所以可以直接索引呀! 如:locals()["thread1"]
print(thread1)
print(thread2)
print(thread3)
print(thread4)
运行结果
1
2
3
4
解析
locals是python内置函数,是用来储存当前局部变量的字典。