python调用c的方法

虽然python是万能的,但是对于某些特殊功能,需要c语言才能完成。这样,就需要用python来调用c的代码了

具体流程:

c编写相关函数 ,编译成库

然后在python中加载这些库,指定调用函数。

这些函数可以char ,int, float, 还能返回指针。

以下示例:

通过python调用c函数,返回"hello,world 字符串"

新建c语言文件 hello.c

touch hello.c

1 #include <stdio.h>
2  
3 char *get_str()
4 {
5   return "hello,world"
6 }

编译成库

gcc -o hello.so --share -fPIC hello.c

新建python文件

touch test.py

1 from ctypes import *
2   
3 dll = CDLL("./hello.so")
4 dll.get_str.restype = c_char_p
5 str = dll.get_str()
6 print(string_at(str, 11))
# 直接调用

执行python文件

1 [feng@arch python_c]$ python test.py 
2 hello,world

这就是python调用c的简单案例实现

 

原文地址:https://www.cnblogs.com/lzc978/p/10101655.html