簡體   English   中英

Python中的多處理-如何在這些循環中使用它?

[英]Multiprocessing in Python - how to use it in these loops?

下面的代碼處理大量數據,我想問一下如何在Python中使用多處理模塊進行並行處理以加快處理速度。 任何幫助表示贊賞

pats = []
for chunk in code_counter(patients, codes):
    pats.append(chunk)

def code_counter(patients, codes):
    for key, group in itertools.groupby(patients, key=operator.itemgetter('ID')):
        group_codes = [item['CODE'] for item in group]
        yield [group_codes.count(code) for code in codes]

我認為您的問題在於收益率的使用。 我認為您無法從不同流程中獲得數據。 我知道,您使用yield cuz時就無法“內聯”加載將導致ram超載的數據。

也許您可以看看多處理隊列http://docs.python.org/2/library/multiprocessing.html#exchanging-objects-between-processes

我並沒有真正了解您要如何使用您的代碼,因此我無法提供確切的示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM