可以使用 Python 中的'threading'模块来创建多线程,并使用'Queue'队列来分配任务。下面是一个遍历处理字典的例子:

import threading
import queue

def process_dict(q):
    while True:
        # 从队列中获取一个任务
        task = q.get()
        if task is None:
            # 如果任务为None,说明任务已经处理完毕,结束线程
            break

        # 处理任务
        key, value = task
        print(f'Processing {key}: {value}')

def main():
    # 创建一个字典
    my_dict = {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}

    # 创建一个队列
    q = queue.Queue()

    # 将字典中的每个键值对放入队列中
    for k, v in my_dict.items():
        q.put((k, v))

    # 创建5个线程
    threads = []
    for i in range(5):
        t = threading.Thread(target=process_dict, args=(q,))
        t.start()
        threads.append(t)

    # 等待所有线程结束
    for t in threads:
        t.join()

if __name__ == '__main__':
    main()

上述代码中,我们首先创建了一个字典'my_dict',然后创建了一个队列'q',将字典中的每个键值对放入队列中。接着,我们创建了5个线程,并将队列'q'作为参数传递给它们。在'process_dict'函数中,线程不断地从队列中获取任务,并处理它们,直到队列为空。当队列为空时,线程退出。在'main'函数中,我们等待所有线程结束,然后程序结束。


原文地址: https://www.cveoy.top/t/topic/nv1K 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录