簡體   English   中英

可以改進從Excel調用Python的運行時(通過xlwings RunPython)嗎?

[英]Can the runtime of calling Python from Excel (via xlwings RunPython) be improved?

我編寫了一個使用xlwings庫的Python腳本,以便從特定的電子表格中獲取函數輸入。 我的想法是從Excel運行此代碼(已將xlwings模塊作為VBA模塊導入)。 我可以像這樣運行它(即從Excel中,在VBA中使用RunPython命令),或者我可以在PyCharm中運行腳本時設置Mock Caller,這使我更容易輸入函數輸入。

這個設置工作正常,當在PyCharm中運行腳本時,平均需要大約2秒。 但是,當我從Excel運行它時,平均需要大約30秒(兩次都給出相同的數據輸入集)。

所以看起來Excel調用Python需要的時間相對較大 - 有沒有人對如何加快這一點有任何建議? 這大概是從Excel運行python需要多長時間?

提前致謝

目前,xl​​wings的默認行為是每次調用RunPython啟動一個新的解釋器會話。 這自然帶來了開銷,雖然在現代系統上它通常只需要2-3秒而不是你看到的。
但是,在Windows上,您可以在VBA設置中切換OPTIMIZED_CONNECTION = True ,然后使用在兩次調用之間保持運行的COM服務器,在文檔中閱讀更多相關信息。

暫無
暫無

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

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