python如何用c语言表示_python如何调用c语言

由于c语言的执行效率有很大的优势,在很多场景中需要将复杂的、需要高效率执行的任务让C语言来完成,编译成动态库供python来调用。

工具/原料

Debian系统

Python2.7

方法/步骤

1

用c语言编写一个动态库,提供两个函数,两个数的整形求和,两个浮点数的求和。取名为mylib.c.

22c4fe36e29147e896212ec6b603bbea3f865815.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

2

将c函数文件编译成so动态库。运行gcc mylib.c -fPIC -shared -o libtest.so命令,在目录下可以看到生成的库文件libtest.so

d695563104ebf6a7efce959fffee1c324a184f15.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

27725684cde34b2cea2f6ccb0d0e7c75e4f44315.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

3

Python调用so库文件。首先导入ctypes,其次用CDLL加载so文件,最后调用对应的函数。将python代码保存到pydemo.py中。

7d34fbf4fcf5ee0df90fbd63f96b0ce264e7ba15.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

4

执行python pydemo.py查看运行结果

0da37be7340f6478dee2a90dfd3e21c2bad6b515.jpg?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_500%2Climit_1

END

经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。

举报作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。

展开阅读全部

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值