作者a29788685 (神奇寶貝大師)
看板Python
標題[問題] starmap 和 arguments
時間Fri Sep 3 14:28:11 2021
在做multiprocessing時 若目標function是一個多變數函數(multi-arguments)
那可能會用到starmap
starmap 的語法是: for a function of x and y,
starmap(f,[[x1,y1],[x2,y2],[x3,y3]...])
這樣multiprocess 就會分別算
f(x1,y1) f(x2,y2) f(x3,y3) ......
問題是: 如果arguments是一個很大的list 那要如何將argument放入starmap中?
原本的作法是另外寫一個for loop 創造這個大list
但這樣的作法太慢,不知道有沒有更好的做法?
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 23.242.118.130 (美國)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1630650493.A.1C3.html
推 lycantrope: 改用*args跟**kwargs,帶入你想要的function 09/03 15:16
→ lycantrope: 如大部分argument都不會變動,可用functools.partial 09/03 15:17
太感謝!! 這很實用!
※ 編輯: a29788685 (23.242.118.130 美國), 09/03/2021 16:14:57