◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
多线程处理列表中字典参数
针对需要使用多线程传递字典参数执行函数的情况,我们可以利用python提供的threadpoolexecutor线程池高效地完成此任务。
导入 nécessaire 库:
import time from concurrent.futures import threadpoolexecutor import threading
my_list = [{'ip': '192.168.1.2', 'password': '123456', 'user_name': '654321'}, ...] def dosome(ip, password, user_name): tname = threading.current_thread().getname() time.sleep(1) print(f'{tname} {ip}') tpe = threadpoolexecutor(max_workers=3) for m in my_list: tpe.submit(dosome, **m)
此代码将创建3个线程,并将字典参数中的 ip 地址打印为线程名称。执行结果如下所示:
立即学习“Python免费学习笔记(深入)”;
Thread-4 192.168.1.2 Thread-2 192.168.1.3 Thread-1 192.168.1.4 Thread-4 192.168.1.5 Thread-2 192.168.1.6
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。