假设我有一个包含GET请求的有效负载数据的dicts列表,如下所示:
lst = [{'json1': 1},{'json2': 2},{'json3': 3}]
此列表的长度可以是1到10之间。从此处我将此列表发送到线程的for循环,调用独立函数(call_1
到call_10
) :
for k in lst():
thread.start_new_thread(call_1, ( lst[k] ,))
thread.start_new_thread(call_2, ( lst[k] ,))
...
thread.start_new_thread(call_10,( lst[k] ,))
我的问题是,如果列表只有长度3,比方说,我应该使用什么方法,以便我只调用前3个线程?
欢迎任何建议,谢谢。
答案 0 :(得分:0)
试试这个:
counter = 0
for k in lst:
counter += 1
exec("thread.start_new_thread(call_" + str(counter) + ", ( lst[k] ,))" )
我正在使用exec()
,它将字符串视为代码。有问题的字符串是使用counter
动态创建的。