将python项目封装打包为.so文件(多级目录)

本文描述了一个技术过程,包括删除测试文件、重命名模块、创建set_up.py脚本编译Cython模块、迁移so文件和重构main.py,以便高效管理Python项目的文件和功能调用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原始目录

 segment-anything文件夹

 

结果目录

删除了用于测试、说明的相关文件,更改了一些文件名称,使用main.py作为入口程序。

  segment-anything文件夹

具体实现 

1.删除不必要的文件

2.改segment-anything为seg

3.改amg_test.py

 

改test.py

 

改./seg/predictor.py

改./seg/build_sam.py

4.在根目录建立set_up.py 

把所有需要的.py文件放入其中。

from distutils.core import setup
from Cython.Build import cythonize
setup(ext_modules=cythonize(["amg_test.py", "test.py", "DataPrepare.py", "input_data.py", "model.py",
                             "./seg/automatic_mask_generator.py", "./seg/build_sam.py",
                             "./seg/__init__.py", "./seg/predictor.py",
                             "./seg/modeling/common.py", "./seg/modeling/image_encoder.py",
                             "./seg/modeling/__init__.py", "./seg/modeling/mask_decoder.py",
                             "./seg/modeling/sam.py", "./seg/modeling/transformer.py",
                             "./seg/modeling/prompt_encoder.py",
                             "./seg/utils/amg.py", "./seg/utils/__init__.py",
                             "./seg/utils/onnx.py", "./seg/utils/transforms.py"
                             ]))

在terminal中执行  

python set_up.py build_ext

5.删除不需要的.py文件

6.从./build/lib.linux-x86_64-cpython-310/中 复制.so文件到相应的目录

7.在根目录建立或修改main.py

from amg_test import main
from test import test
main()
test()

8.通过run  main.py可以工作了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值