2016-02-19 70 views
1

我從各種資產(大約15)的交換中獲取實時數據。所以,我有腳本,我打算複製15次,並替換每個資產(API調用等)的必要字段,如何一次運行所有15個腳本?立即運行15個python腳本

從通過幾個帖子我可以看到開放多個CMD是一個選項,在我的情況下,但是這是不少窗口。 是否有腳本管理器應用程序或可以處理所有腳本的東西?

編輯: 當我說「取代必要的字段」我的意思是在API調用

+1

您標記這個'multiprocessing',這是顯而易見的答案。考慮一羣工人。當你說「替換必要的字段」時,我不知道這意味着什麼,但聽起來你應該將腳本轉換爲函數調用。然後你用'pool.map(my_function,[(params的元組),(params的元組)]等類似的方式調用池。查看'multiprocessing'示例來獲得具體的東西。 – tdelaney

回答

0

@tdelaney替代資產的名稱是正確的。用你需要的任何變量包裝你想要多次運行的代碼,並將函數和所有15個變量傳遞給pool.map。我修改了一個來自Python文檔的例子,以適用於您的案例。這個例子只是增加了兩個數字。

from multiprocessing import Pool 

def your_function(args): 
    return args[0] + args[1] 

if __name__ == '__main__': 
    pool = Pool(15) # pool with 15 processes 
    args = [(x, x) for x in range(15)] # 15 argument tuples 
    print(pool.map(your_function, args)) 

輸出:

>>> [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28]