Rumah >pembangunan bahagian belakang >Golang >Mengapa program Go saya tidak menerima nilai pulangan daripada panggilan fungsi Python saya?

Mengapa program Go saya tidak menerima nilai pulangan daripada panggilan fungsi Python saya?

Barbara Streisand
Barbara Streisandasal
2024-12-04 22:20:12795semak imbas

Why is my Go program not receiving the return value from my Python function call?

Memanggil Fungsi Python daripada Go dan Mendapatkan Nilai Pulangan

Dalam senario ini, anda bertujuan untuk memanggil fungsi Python bernama cat_strings daripada program Go dan akses nilai pulangannya. Walau bagaimanapun, walaupun cuba melaksanakan arahan, anda menghadapi masalah apabila data pemulangan yang dijangkakan tiada.

Untuk menyelesaikan isu ini, pertimbangkan untuk mengalih keluar petikan tunggal di sekitar perintah Python itu sendiri. Daripada:

program := "python"
arg0 := "-c"
arg1 := fmt.Sprintf("'import pythonfile; print pythonfile.cat_strings(\"%s\", \"%s\")'", "foo", "bar")

Gunakan:

cmd := exec.Command("python",  "-c", "import pythonfile; print pythonfile.cat_strings('foo', 'bar')")

Pelarasan ini memastikan arahan Python ditafsirkan dengan betul oleh sistem, yang membawa kepada pelaksanaan yang betul bagi fungsi Python anda. Akibatnya, anda sepatutnya boleh mendapatkan nilai pulangan daripada fungsi cat_strings dalam program Go anda.

Atas ialah kandungan terperinci Mengapa program Go saya tidak menerima nilai pulangan daripada panggilan fungsi Python saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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