JAVA端的一个函数A调用Python端的一个函数B,B先return给A一个信息,再继续执行B后面的代码,请问有什么思路么,或者有什么库可以实现么
2条回答 默认 最新
MarkHan_ 2023-06-25 11:54关注import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) { try { // 创建ProcessBuilder对象,指定要执行的Python脚本和参数 ProcessBuilder pb = new ProcessBuilder("python", "path/to/your/python_script.py"); // 启动子进程 Process process = pb.start(); // 获取子进程的标准输入流 BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream())); // 获取子进程的标准输出流 BufferedReader out = new BufferedReader(new InputStreamReader(process.getOutputStream())); // 调用Python函数B并传递参数 out.write("your_input_data\n"); out.flush(); // 读取Python函数B返回的信息 String info = in.readLine(); System.out.println("Received info from Python: " + info); // 继续执行后续代码 System.out.println("Continue executing..."); // 关闭流和进程 in.close(); out.close(); process.waitFor(); } catch (IOException | InterruptedException e) { e.printStackTrace(); } } }本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用