gpt4 book ai didi

Python:使用多处理分块处理大型字典

转载 作者:太空宇宙 更新时间:2023-11-04 06:12:16 24 4
gpt4 key购买 nike

我正在运行一个模拟,字典中存储了大约 1000 万个独特的 DNA 序列。我需要处理每个序列,包括以 5 个为一组逐个字母地遍历序列(取前 5 个字母,将索引按一个换取另一个 5),并在一个单独的函数中处理它。这需要相当多的时间,因为我设置了它,所以它在 for 循环中一个一个地遍历每个序列。

我正在寻找的是一种将字典分成大约 20 个 block 的方法,我可以使用多处理来处理这些 block 。有没有比遍历每个键并迭代填充 20 个词典更简单的方法?

最佳答案

我建议使用 itertools.groupby,这是 itertools 的工作。文档 here .

def grouper(n, iterable, fillvalue=None):
"grouper(3, 'ABCDEFG', 'x') --> ABC DEF Gxx"
args = [iter(iterable)] * n
return izip_longest(fillvalue=fillvalue, *args)

您所要做的就是指定 block 的数量或您的情况,n = 5

关于Python:使用多处理分块处理大型字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18025411/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com