Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Memanggil Fungsi Python daripada Node.js Menggunakan 'child_process'?

Bagaimana untuk Memanggil Fungsi Python daripada Node.js Menggunakan 'child_process'?

Patricia Arquette
Lepaskan: 2024-11-30 14:44:10
asal
804 orang telah melayarinya

How to Call Python Functions from Node.js Using 'child_process'?

Memanggil Fungsi Python daripada Node.js

Merangkumi keupayaan perpustakaan pembelajaran mesin Python dalam aplikasi Node.js memerlukan cara untuk menggunakan Python berfungsi daripada persekitaran Node.js. Pakej 'child_process' muncul sebagai alat yang ideal untuk merapatkan jurang ini.

Penyelesaian: Menggunakan 'child_process'

Dengan menggunakan pakej 'child_process', anda boleh membuat subproses Python dan melaksanakan fungsi Python di dalamnya. Begini cara untuk melakukannya:

  1. Mulakan dengan mengimport modul 'child_process':

    const spawn = require("child_process").spawn;
    Salin selepas log masuk
  2. Buat subproses Python dan bekalkan Python laluan skrip dan mana-mana yang dikehendaki argumen:

    const pythonProcess = spawn('python', ["path/to/script.py", arg1, arg2, ...]);
    Salin selepas log masuk
  3. Pada bahagian Python, pastikan 'sys' diimport dan gunakan 'sys.argv' untuk mengakses argumen yang dihantar daripada Node.js:

    import sys
    arg1 = sys.argv[1]
    arg2 = sys.argv[2]
    Salin selepas log masuk
  4. Untuk mengembalikan data kepada Node.js, gunakan 'cetak' dalam skrip Python dan siram output:

    print(dataToSendBack)
    sys.stdout.flush()
    Salin selepas log masuk
  5. Dalam Node.js, dengar data daripada subproses Python:

    pythonProcess.stdout.on('data', (data) => {
      // Handle the data received from the Python script
    });
    Salin selepas log masuk

Fleksibiliti dan Invokasi Fungsi Dinamik

Kelebihan pendekatan ini ialah ia membolehkan berbilang hujah untuk dihantar ke skrip Python. Fleksibiliti ini membolehkan anda mereka bentuk skrip Python dengan argumen tertentu menentukan fungsi yang hendak dipanggil dan argumen lain dihantar ke fungsi tersebut.

Contoh:

Dalam anda Skrip Python, tentukan fungsi untuk pembelajaran mesin dan fungsi utama yang mengatur fungsi untuk memanggil berdasarkan yang ditentukan argumen:

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()
Salin selepas log masuk

Dengan menghantar nama fungsi dan data sebagai argumen kepada skrip daripada Node.js, anda boleh memanggil fungsi Python yang sesuai secara dinamik.

Nota: Pemindahan data antara Node.js dan Python dicapai melalui output standard dan aliran input standard.

Atas ialah kandungan terperinci Bagaimana untuk Memanggil Fungsi Python daripada Node.js Menggunakan 'child_process'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan