pool.starmapとzipを使用して、リスト全体を1つの要素と組み合わせて渡すにはどうすればよいですか?

劉まおぶ

私は面白い質問について考えました、そして誰かが私がこれを解決するのを手伝ってくれることを願っています!マルチプロセッシングを使用したいので、pool.starmap(myfunction、zip([1,2,3,4,5]、['a'、 'b'、 'c'、 'd'、 'e ']))複数の引数を渡すため。リスト全体[1,2,3,4,5]を、次のような2番目のリストのすべての要素と組み合わせたい

([1,2,3,4,5],'a'),([1,2,3,4,5],'b').....

次のようなリスト内の単一の要素を組み合わせるだけではなく

(1,'a'),(2,'b')

私はリストに5を掛ける愚かな方法でそれを行う方法を知っています

new_list=[1,2,3,4,5]*5

次に、new_listを2番目のリストで圧縮します

私は今、これを行うためのより良い方法があるかどうか疑問に思っていますか?

JohanL

あなたのコメントを読んだ後、私はあなたが探していると思いますitertools.repeat

import itertools
import multiprocessing

def combine(val, char):
    return f'{val}{char}'

vals = [1, 2, 3, 4, 5]
chars = ['a', 'b', 'c', 'd', 'e']

pool = multiprocessing.Pool(3)
combs = pool.starmap(combine, zip(itertools.repeat(vals, 5), chars))

print(combs)

これは、単純な単純なアプローチよりもメモリフットプリントが小さくなります。

combs = pool.starmap(combine, zip([vals]*5, chars))

代わりに、valschars要素のすべての組み合わせを生成したい場合は、次を使用できますitertools.product(これは私が最初に望んでいたものです):

combs = pool.starmap(combine, itertools.product(vals, chars))

補足として; itertoolsまた、1つのプロセスですべての呼び出しを順番に実行することを除いてstarmap、ほぼ同じように機能する関数も含まれていますmultiprocessingただし、これは複数のコアを利用することはできません。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Pool.starmap()に2つの引数を渡すにはどうすればよいですか?

分類Dev

pool.starmapを使用して、いくつかのプロセスでいくつかの引数を使用して関数を繰り返す方法

分類Dev

Javaストリームを使用してcurrentElementの値を以前の値と組み合わせるにはどうすればよいですか

分類Dev

2つのリスト間で整数と演算のすべての組み合わせを取得するにはどうすればよいですか?

分類Dev

マルチプロセッシングpool.starmapで文字列のリストを渡すときにエラーが発生しました

分類Dev

Azure Sql Database Elastic Pool内のすべてのデータベースにPITRを設定するにはどうすればよいですか?

分類Dev

multiprocessing.pool内のプロセスに名前を付けるにはどうすればよいですか?

分類Dev

n個の要素を持つタプルと文字列をリストに組み合わせるにはどうすればよいですか?

分類Dev

rand関数とsplit関数を使用して特定の3要素の組み合わせを回避するにはどうすればよいですか?

分類Dev

lmモデルの2つのリストを要素ごとに組み合わせるにはどうすればよいですか?

分類Dev

Pythonのリストで要素が「-」の場合、現在の要素を次の要素と組み合わせるにはどうすればよいですか?

分類Dev

Queue参照をpool.map_async()によって管理される関数にどのように渡しますか?

分類Dev

1つのクラスの2つのオブジェクトを追加し、組み合わせて出力するにはどうすればよいですか?

分類Dev

Pythonでいくつかのフォーマットを使用して2番目のリストを最初のリストと組み合わせるにはどうすればよいですか?

分類Dev

2枚のシートを1つの値に基づくリストと組み合わせるにはどうすればよいですか?

分類Dev

プールが閉じられる前に、すべてのpython ** pool.apply_async()**呼び出しが実行されることを確認するにはどうすればよいですか?

分類Dev

itertoolsの組み合わせ関数を使用してリストのリストを作成するにはどうすればよいですか?

分類Dev

IDと組み合わせたリストとしてデータフレームを要約するにはどうすればよいですか?

分類Dev

node.jsを使用して複数のMongodbクエリを1つに組み合わせるにはどうすればよいですか?

分類Dev

bupaRを使用して、プロセスマップとパフォーマンスマップのカウントと時間を1つのマップに組み合わせるにはどうすればよいですか?

分類Dev

配列でmultiprocessing.Poolを使用するにはどうすればよいですか?

分類Dev

v-forとv-modelを組み合わせてオブジェクトのリストを編集するにはどうすればよいですか?

分類Dev

要素を繰り返さずにリストのすべての組み合わせを取得するにはどうすればよいですか?

分類Dev

パンダの.explode()を複数の列の.split()と組み合わせて、1つの行を追加するにはどうすればよいですか?

分類Dev

「ifステートメント」をモナークの日付と組み合わせて使用するにはどうすればよいですか?

分類Dev

DataFrame(パンダ)のインデックスとして組み合わせまたは文字列を使用するにはどうすればよいですか?

分類Dev

PLPGSQLでWITHをFORループと組み合わせて使用するにはどうすればよいですか?

分類Dev

配列の要素とのすべての組み合わせを生成し、forの代わりにitertoolsを使用してフォーマットされた文字列に入れるにはどうすればよいですか?

分類Dev

Python 2.7:不足しているpool.starmapを補う方法は?

Related 関連記事

  1. 1

    Pool.starmap()に2つの引数を渡すにはどうすればよいですか?

  2. 2

    pool.starmapを使用して、いくつかのプロセスでいくつかの引数を使用して関数を繰り返す方法

  3. 3

    Javaストリームを使用してcurrentElementの値を以前の値と組み合わせるにはどうすればよいですか

  4. 4

    2つのリスト間で整数と演算のすべての組み合わせを取得するにはどうすればよいですか?

  5. 5

    マルチプロセッシングpool.starmapで文字列のリストを渡すときにエラーが発生しました

  6. 6

    Azure Sql Database Elastic Pool内のすべてのデータベースにPITRを設定するにはどうすればよいですか?

  7. 7

    multiprocessing.pool内のプロセスに名前を付けるにはどうすればよいですか?

  8. 8

    n個の要素を持つタプルと文字列をリストに組み合わせるにはどうすればよいですか?

  9. 9

    rand関数とsplit関数を使用して特定の3要素の組み合わせを回避するにはどうすればよいですか?

  10. 10

    lmモデルの2つのリストを要素ごとに組み合わせるにはどうすればよいですか?

  11. 11

    Pythonのリストで要素が「-」の場合、現在の要素を次の要素と組み合わせるにはどうすればよいですか?

  12. 12

    Queue参照をpool.map_async()によって管理される関数にどのように渡しますか?

  13. 13

    1つのクラスの2つのオブジェクトを追加し、組み合わせて出力するにはどうすればよいですか?

  14. 14

    Pythonでいくつかのフォーマットを使用して2番目のリストを最初のリストと組み合わせるにはどうすればよいですか?

  15. 15

    2枚のシートを1つの値に基づくリストと組み合わせるにはどうすればよいですか?

  16. 16

    プールが閉じられる前に、すべてのpython ** pool.apply_async()**呼び出しが実行されることを確認するにはどうすればよいですか?

  17. 17

    itertoolsの組み合わせ関数を使用してリストのリストを作成するにはどうすればよいですか?

  18. 18

    IDと組み合わせたリストとしてデータフレームを要約するにはどうすればよいですか?

  19. 19

    node.jsを使用して複数のMongodbクエリを1つに組み合わせるにはどうすればよいですか?

  20. 20

    bupaRを使用して、プロセスマップとパフォーマンスマップのカウントと時間を1つのマップに組み合わせるにはどうすればよいですか?

  21. 21

    配列でmultiprocessing.Poolを使用するにはどうすればよいですか?

  22. 22

    v-forとv-modelを組み合わせてオブジェクトのリストを編集するにはどうすればよいですか?

  23. 23

    要素を繰り返さずにリストのすべての組み合わせを取得するにはどうすればよいですか?

  24. 24

    パンダの.explode()を複数の列の.split()と組み合わせて、1つの行を追加するにはどうすればよいですか?

  25. 25

    「ifステートメント」をモナークの日付と組み合わせて使用するにはどうすればよいですか?

  26. 26

    DataFrame(パンダ)のインデックスとして組み合わせまたは文字列を使用するにはどうすればよいですか?

  27. 27

    PLPGSQLでWITHをFORループと組み合わせて使用するにはどうすればよいですか?

  28. 28

    配列の要素とのすべての組み合わせを生成し、forの代わりにitertoolsを使用してフォーマットされた文字列に入れるにはどうすればよいですか?

  29. 29

    Python 2.7:不足しているpool.starmapを補う方法は?

ホットタグ

アーカイブ