Python作为胶水语言,可以方便地与其他语言编写的代码进行交互,例如调用Shell命令、Java代码、C/C++函数等。下面是一些使用Python调用其他语言代码的方法:
调用Shell命令
import os
使用os.system调用Shell命令
os.system("ls") 同步执行,返回系统返回值
使用subprocess模块调用Shell命令
import subprocess
异步执行,返回一个Popen对象
process = subprocess.Popen("ls", shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = process.communicate()
print(stdout.decode()) 打印命令输出
调用Java代码
import jpype
启动JVM
jvm_path = jpype.getDefaultJVMPath()
jpype.startJVM(jvm_path)
调用Java代码
jpype.java.lang.System.out.println("Hello from Java!")
关闭JVM
jpype.shutdownJVM()
调用C/C++函数
from ctypes import *
加载动态库
lib = cdll.LoadLibrary("./lib_Csayhello.so")
调用C函数
lib.show_hello()
注意事项
使用`os.system`时,建议使用`subprocess`模块,因为它提供了更多的控制和灵活性。
在使用`jpype`调用Java代码时,需要确保Java环境已经正确安装。
在使用`ctypes`调用C/C++函数时,需要确保动态库已经正确编译和链接。
以上示例展示了Python作为胶水语言,如何与其他语言编写的代码进行交互。请根据实际需求选择合适的方法