python打包成so文件过程解析


Posted in Python onSeptember 28, 2019

这篇文章主要介绍了python打包成so文件过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
pip install cython

编写setput.py文件:

setup.py文件内容如下:

from distutils.core import setup
from distutils.extension import Extension
from Cython.Build import cythonize

extensions = [Extension("ln_facedetector",
            ["ln_facedetector.py"],
            include_dirs=["/usr/local/lib"],
            libraries=["/usr/local/lib/python3.6/site-packages/cv2/cv2.cpython-36m-x86_64-linux-gnu.so",
                  "/usr/local/lib/python3.6/site-packages/dlib.cpython-36m-x86_64-linux-gnu.so"],
            library_dirs=["/usr/local/lib/python3.6/site-packages/cv2","/usr/local/lib/python3.6/site-packages"])]

setup(ext_modules=cythonize(extensions))

整个工程中包括多少个py文件,就写多少个Extension,并把需要调用的其他库路径在include_dirs、libraries、library_dirs中进行设置。

编译so文件,执行以下命令:

python setup.py build_ext

调用so文件:

import sys
sys.path.append('/vloum/faceSO/ln_facedetector') #加载so文件(入参为so文件路径)
from ln_facedetector import faceutil #import so文件中的相关类
arr = faceutil.detection("/vloum/faceSO/a.jpg")
print(arr)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python脚本实现Web漏洞扫描工具
Oct 25 Python
利用Python破解斗地主残局详解
Jun 30 Python
Python3操作SQL Server数据库(实例讲解)
Oct 21 Python
Python实现的单向循环链表功能示例
Nov 10 Python
python实现redis三种cas事务操作
Dec 19 Python
Python3使用正则表达式爬取内涵段子示例
Apr 22 Python
详解python中的index函数用法
Aug 06 Python
Python 获取指定文件夹下的目录和文件的实现
Aug 30 Python
python如何使用jt400.jar包代码实例
Dec 20 Python
python将dict中的unicode打印成中文实例
May 11 Python
Pymysql实现往表中插入数据过程解析
Jun 02 Python
keras K.function获取某层的输出操作
Jun 29 Python
python基于FTP实现文件传输相关功能代码实例
Sep 28 #Python
python网络爬虫 Scrapy中selenium用法详解
Sep 28 #Python
在vscode中配置python环境过程解析
Sep 28 #Python
python爬虫 线程池创建并获取文件代码实例
Sep 28 #Python
python 单线程和异步协程工作方式解析
Sep 28 #Python
python爬虫 正则表达式解析
Sep 28 #Python
python爬虫 Pyppeteer使用方法解析
Sep 28 #Python
You might like
PHP实现股票趋势图和柱形图
2015/02/07 PHP
CodeIgniter基于Email类发邮件的方法
2016/03/29 PHP
Yii2组件之多图上传插件FileInput的详细使用教程
2016/06/20 PHP
ThinkPHP实现静态缓存和动态缓存示例代码
2017/05/02 PHP
TP5(thinkPHP5框架)实现显示错误信息及行号功能的方法
2019/06/03 PHP
PHP中echo与print区别点整理
2021/03/09 PHP
在网页中使用document.write时遭遇的奇怪问题
2010/08/24 Javascript
javascript中typeof的使用示例
2013/12/19 Javascript
js中回调函数的学习笔记
2014/07/31 Javascript
基于BootStrap的Metronic框架实现页面链接收藏夹功能按钮移动收藏记录(使用Sortable进行拖动排序)
2016/08/29 Javascript
利用jquery给指定的table动态添加一行、删除一行的方法
2016/10/12 Javascript
基于Angular.js实现的触摸滑动动画实例代码
2017/02/19 Javascript
Vue2.0表单校验组件vee-validate的使用详解
2017/05/02 Javascript
详解React 16 中的异常处理
2017/07/28 Javascript
BootStrap数据表格实例代码
2017/09/13 Javascript
浅谈vue中使用图片懒加载vue-lazyload插件详细指南
2017/10/23 Javascript
详解vue-router 命名路由和命名视图
2018/06/01 Javascript
从零开始搭建vue移动端项目到上线的步骤
2018/10/15 Javascript
[01:31:22]DOTA2-DPC中国联赛定级赛 LBZS vs Magma BO3第二场 1月10日
2021/03/11 DOTA
python清除指定目录内所有文件中script的方法
2015/06/30 Python
详解Django中间件的5种自定义方法
2018/07/26 Python
python BlockingScheduler定时任务及其他方式的实现
2019/09/19 Python
django 中使用DateTime常用的时间查询方式
2019/12/03 Python
tensorflow入门:tfrecord 和tf.data.TFRecordDataset的使用
2020/01/20 Python
python+playwright微软自动化工具的使用
2021/02/02 Python
Perfume’s Club德国官网:在线购买香水
2019/04/08 全球购物
兰兰过桥教学反思
2014/02/08 职场文书
会计自荐信范文
2014/03/09 职场文书
师德师风自我评价范文
2014/09/11 职场文书
公安四风对照检查材料思想汇报
2014/10/11 职场文书
行政文员岗位职责
2015/02/04 职场文书
项目合作意向书
2015/05/08 职场文书
2016机关干部作风建设心得体会
2016/01/21 职场文书
先进基层党组织事迹材料2016
2016/02/29 职场文书
动画电影《擅长捉弄人的高木同学》6月10日上映!
2022/03/20 日漫
python+opencv实现目标跟踪过程
2022/06/21 Python