python - 如何将 C++ python 扩展导入到另一个目录中的模块中?

标签 python import module

这是目录结构:

app/
    __init__.py
    sub1/
        __init__.py
        mod1.py
    sub2/
        __init__.py
        sub2.so
        test_sub2.py
  • 文件夹应用程序位于我的 PYTHONPATH
  • 所有 __init__.py 文件都是空的。
  • 共享库 sub2.so 是我使用 cmake 和 boost-python 编译的 C++ 扩展模块。
  • test_sub2.py 是 sub2.so 中定义的类的测试脚本。
  • 如果我从 sub2 目录运行 test_sub2.py,它会正确导入模块并且测试通过。

如何将 sub2.so 中的 A 类导入到 mod1.py 中?

最佳答案

导入它的方法是从任何源文件导入app.sub2.sub2。您的测试实际上应该位于 app 之外,并使用该模块路径来访问扩展模块。

关于python - 如何将 C++ python 扩展导入到另一个目录中的模块中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2255543/

相关文章:

python - 如何拟合4点的椭圆轮廓?

vue.js - 在vue中使用url-loader来获取特定目录中的图像

php - 导入csv文件后,重定向到http ://localhost/index. php

java - 如何在android studio中导入zebra包?

linux - 如何从 Linux 内核模块的 sysfs 属性文件中读取字符串?

javascript - browserify/requirejs模块和ES6模块有什么区别

python - UUIDField 的 Django 1.10 全文搜索返回 DataError

Python字符串删除十六进制代码,如 'president trump\\xe2\\x80\\x99s'

python - 将 Salesforce 报告导出为 CSV

import - 如何在 Swift 中定义自定义 UIGestureRecognizer?