從Node.js 呼叫Python 函數
在Node.js 應用程式中擁抱Python 機器學習庫的功能需要一種呼叫方法Node.js 環境中的Python 函數。 「child_process」套件成為彌補這一差距的理想工具。
解決方案:利用「child_process」
透過使用「child_process」套件,您可以建立Python 子進程並在其中執行 Python 函數。操作方法如下:
-
首先導入 'child_process' 模組:
const spawn = require("child_process").spawn;
-
建立一個 Python 子程序並提供一個 Python 子程序並提供一個Python腳本路徑和任何所需的參數:
const pythonProcess = spawn('python', ["path/to/script.py", arg1, arg2, ...]);
-
在Python 端,確保導入'sys' 並使用'sys.argv' 存取從Node.js 傳遞的參數:
import sys arg1 = sys.argv[1] arg2 = sys.argv[2]
-
要將資料傳回Node.js,請在Python腳本中使用「print」並刷新輸出:
print(dataToSendBack) sys.stdout.flush()
-
在 Node.js 中,監聽來自 Python子程序的資料:
pythonProcess.stdout.on('data', (data) => { // Handle the data received from the Python script });
靈活性和動態函數呼叫
這種方法的優點是它支援多個參數傳遞給Python 腳本。這種靈活性可讓您設計一個 Python 腳本,其中指定的參數決定要呼叫哪個函數,而其他參數則傳遞給該函數。
範例:
在您的Python 腳本,定義一個用於機器學習的函數和一個主函數,該函數根據指定的參數協調調用哪個函數:
def machine_learning_function(data): # Implement the machine learning functionality def main(): function_name = sys.argv[1] data = sys.argv[2] if function_name == "machine_learning_function": machine_learning_function(data) if __name__ == "__main__": main()
透過傳遞函數名稱和資料作為Node.js 腳本的參數,可以動態呼叫對應的Python 函數。
注意: Node.js 和 Python 之間的資料傳輸是透過標準輸出實現的和標準輸入流。
以上是如何使用「child_process」從 Node.js 呼叫 Python 函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Linux終端中查看Python版本時遇到權限問題的解決方法當你在Linux終端中嘗試查看Python的版本時,輸入python...

本文解釋瞭如何使用美麗的湯庫來解析html。 它詳細介紹了常見方法,例如find(),find_all(),select()和get_text(),以用於數據提取,處理不同的HTML結構和錯誤以及替代方案(SEL)

本文比較了Tensorflow和Pytorch的深度學習。 它詳細介紹了所涉及的步驟:數據準備,模型構建,培訓,評估和部署。 框架之間的關鍵差異,特別是關於計算刻度的

Python的statistics模塊提供強大的數據統計分析功能,幫助我們快速理解數據整體特徵,例如生物統計學和商業分析等領域。無需逐個查看數據點,只需查看均值或方差等統計量,即可發現原始數據中可能被忽略的趨勢和特徵,並更輕鬆、有效地比較大型數據集。 本教程將介紹如何計算平均值和衡量數據集的離散程度。除非另有說明,本模塊中的所有函數都支持使用mean()函數計算平均值,而非簡單的求和平均。 也可使用浮點數。 import random import statistics from fracti

本文討論了諸如Numpy,Pandas,Matplotlib,Scikit-Learn,Tensorflow,Tensorflow,Django,Blask和請求等流行的Python庫,並詳細介紹了它們在科學計算,數據分析,可視化,機器學習,網絡開發和H中的用途

本文指導Python開發人員構建命令行界面(CLIS)。 它使用Typer,Click和ArgParse等庫詳細介紹,強調輸入/輸出處理,並促進用戶友好的設計模式,以提高CLI可用性。

在使用Python的pandas庫時,如何在兩個結構不同的DataFrame之間進行整列複製是一個常見的問題。假設我們有兩個Dat...

文章討論了虛擬環境在Python中的作用,重點是管理項目依賴性並避免衝突。它詳細介紹了他們在改善項目管理和減少依賴問題方面的創建,激活和利益。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

禪工作室 13.0.1
強大的PHP整合開發環境

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具