Go からの Python 関数の呼び出しと戻り値の取得
このシナリオでは、Go プログラムから cat_strings という名前の Python 関数を呼び出すことを目的としています。そしてその戻り値にアクセスします。ただし、コマンドを実行しようとしても、予期された戻りデータが見つからないという問題が発生します。
この問題を解決するには、Python コマンド自体を囲んでいる単一引用符を削除することを検討してください。
program := "python" arg0 := "-c" arg1 := fmt.Sprintf("'import pythonfile; print pythonfile.cat_strings(\"%s\", \"%s\")'", "foo", "bar")
の代わりに:
cmd := exec.Command("python", "-c", "import pythonfile; print pythonfile.cat_strings('foo', 'bar')")
を使用します。この調整により、Python コマンドがシステムによって適切に解釈され、Python 関数が正しく実行されるようになります。その結果、Go プログラムの cat_strings 関数から戻り値を取得できるようになります。
以上がGo プログラムが Python 関数呼び出しからの戻り値を受け取らないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。