简单地说,问题:您可能知道,或者知道如何实现下面提到的,Python
中的现有库,无论是通过绑定还是其他任何可能的解决方案?
描述:
我正在做一个项目,我有一个非常的大数量 of 自定义构建,即 C++ Qt Libraries
(版本5.15.2),我需要在Python
中使用它。
在过去的几周里,我对这个话题做了很多研究。但是,对于如何以适当的方式执行绑定,我似乎找不到合适的解决方案。
我主要研究了Shiboken
,因为这是Qt Framework
正式支持和鼓励的python解决方案。
然而,Shiboken
要求我为每个库手工编写一个类型系统和头文件,其中包含我希望在绑定中使用的库的每个方法或所需的部分。这对我来说是个问题,因为我要求C++
版本中的每个方法都出现在Python
版本中,而手动编写该文件实际上是不可能的。
需要像其他库一样从Python脚本中调用它们,或者以类似的方式调用它们。
发布于 2022-06-17 07:39:22
Shiboken
可能是一个不错的选择。是的,您需要在类型系统和头文件中指定每个类/struct/enum/命名空间。但不是每种方法。如果在type-system
文件中指定了一个类,那么所有的类方法都将被提取到Python
中。例如,这个定义就足够了:
<?xml version="1.0"?>
<typesystem package="mylibrary">
<object-type name="MyClass1"/>
<object-type name="MyClass2"/>
</typesystem>
此外,您还可以查看PySide
源代码。有大量的Qt
库被提取到Python
中。很好的例子。
https://stackoverflow.com/questions/72023175
复制相似问题