问题标签 [python-bindings]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 Shiboken 生成 C++ 库 python 绑定
我按照 wiki http://qt-project.org/wiki/PySide_Binding_Generation_Tutorial上的教程进行操作, 但无法使其正常工作。我在 MacOSX 上
到目前为止,这是我所做的:
- 构建 FooLib(静态)---> libFooLib.a
- 创建 typesystem_foo.xml
使用以下命令运行 shiboken:
shiboken-2.7 global.h --include-paths=.:/opt/local/include/PySide-2.7:/opt/local/include --typesystem-paths=/opt/local/share/PySide-2.7/typesystems - -output-directory=../FooLibBinding typesystem_foo.xml
从生成的 c++ 代码构建 FooLibBinding 动态库 --> libFooLibBinding.dylib
现在,我不再只是从命令行运行 python 解释器,而是创建了一个 C++ 程序,它可以加载 python 解释器并使用 FooLib 打开一个 .py 脚本。该程序与 libFooLibBinding.dylib 动态链接,所以我猜傻瓜模块工作所需的所有符号都在那里;)
这是代码:
运行程序时,第一次尝试加载模块时失败,提示:ImportError: No module named foolib
然后在运行 .py 脚本时第二次:
所以很明显它找不到从绑定生成的模块。我的问题是我应该怎么做才能找到它?
本教程使用了一个 Makefile,但似乎并没有做更多的事情,而不仅仅是链接绑定动态库。
python - 无法在 python OpenCV 绑定中导入 xfeatures2d
我正在尝试从 python 中的 opencv 3 访问 SIFT 和 SURF 功能。按照其他人的建议,我跟着opencv_contrib的安装。一些安装日志如下:
之后我在 python 中导入 cv2 但无法导入 xfeatures2d。
有什么线索吗?
selenium-webdriver - 如何在 selenium 的 python 绑定中导入 java.awt.Robot 和 java.awt.event.KeyEvent 及其示例用法
设置:selenium 2.45.0 的python 绑定,IEserver driver2.45.0(x86),python 2.7.9,window 7 64 位
问题:尝试在 Web 应用程序中处理基于安全的窗口弹出(OS)(输入密码并单击确定)。
试过 1. 像这样工作的警报处理,能够输入密码
但是现在以下不起作用,无法单击确定或按 ENETER
2.Autoit,不想用,是最后的选择
3.看到了一些解决方案,比如使用机器人类
我是 java 新手,不知道如何在 python 绑定中导入这些包,这就是他们在 selenium 中的做法。
想知道如何在 selenium 的 python 绑定中导入上述 pacakages,一些工作示例是
c - 无法将“char**”转换为“wchar_t**”
代码摘录:
产生错误信息
错误:无法将参数 '2' 的 'char**' 转换为 'wchar_t**' 到 'void PySys_SetArgv(int, wchar_t**)'</p>
我该如何转换argv
?
python - Tkinter:画布中的可滚动框架:自动调整大小绑定错误
此脚本在运行时会打开一个分为 3 帧的窗口:
- 将在其中显示数据的大框架(标签小部件)。
- 它下面有一个较小的框架,带有用户输入小部件。
- 右下角带有文本框小部件的小框架。
大框架将有很多数据(=标签小部件),所以我需要它是可滚动的(垂直)。这是我通过在滚动条小部件旁边创建一个画布小部件来完成的。在画布中,放置了一个框架小部件。
一切似乎都在工作,但是我的调整大小功能却没有。我的框架小部件没有更新其尺寸!这可能是因为我无法修复的错误。
基本问题:
该脚本在第 43 行的“ lambda: resize_frame(self) ”命令上给出了一个错误。我该如何解决这个问题?
旁注:我的问题可能与画布小部件上的不正确绑定有关。因为我不确定我是否想提供足够的上下文(脚本)。
提前谢谢了。
R4PH4EL 建议后的工作版本:
- 适当的缩进:函数被定义为 init 的一部分。
对第 43/107 和 44/110 行的 lambda 命令进行了一些调整。
/li>
python - “您需要 1.5.0 或更高版本的 Subversion Python 绑定”使用 mailer.py
当用户使用Apache Mailer 脚本(mailer.py)通过钩子锁定/解锁 SVN 存储库中的元素时,我正在尝试发送电子邮件。当执行合适的钩子时,我收到以下错误:
您需要 1.5.0 或更高版本的 Subversion Python 绑定。
我已经安装了以下工具:
- VisualSVN 3.3.1 (Subversion 1.8.13)
- Python 3.5.1(我尝试过 32 位和 64 位版本)
- Python SVN 扩展 (pysvn) v1.8(适用于 Python v3.5 和 SVN 1.8.14)
此外,我有可用的 Subversion 1.8.13 源代码。
合适的钩子(post-lock.cmd)具有以下独特的行:
我已将 PYTHONPATH 配置为:
以上所有配置都会引发上述错误。
知道我在哪里可以获得 1.5.0 Python Subversion 绑定以及如何配置它们以允许邮件程序脚本执行而不会出错?
非常感谢你。
c++ - 包装 boost::geometry::Point 访问器的 Cythonic 方式
包装 a 的以下成员函数的正确 cythonic 方法是boost::geometry::Point
什么?代码片段来自这里。
我第一次尝试使用:
但后来我不知道去哪里,因为这样的事情:
给了我这个失败:
我目前的工作解决方案是创建一些辅助函数,例如:
有人想到一个更优雅的解决方案吗?
python - 更改 opencv 源后更新 Python 绑定 cv2.so
我已经修改了用于对象检测的 opencv 级联分类器的源代码以包含新功能。我对负责训练分类器的 opencv_createsamples 和 opencv_traincascade 的源代码进行了更改。然后我也对级联分类器的detectMultiScale(检测器库)进行了类似的更改。虽然前两个是可执行文件,但检测器被编译为 opencv 库。由于库源代码的更改,将 C/C++ 库链接到 Python 方法的 Python 包装器 cv2.so 似乎已损坏。由于存储在 cv2.so 中的一组符号由于更改而不再相同,因此在导入 cv2 时出现以下错误。
ImportError:/usr/local/lib/python2.7/dist-packages/cv2.so:未定义符号:_ZN2cv17CascadeClassifier16detectMultiScaleERKNS_11_InputArrayERSt6vectorINS_5Rect_IiEESaIS6_EEdiiNS_5Size_IiEESB_
我现在如何更新 Python 绑定并因此更新 cv2.so 以反映我的更改?任何帮助表示赞赏。谢谢。
python - c++ 程序中函数的 Python 绑定
我有一个用 c++ 编写的程序,它可以自己运行,但是我们想让 Python 可以访问它。具体来说,我们有几个在 c++ 中效率更高的函数,但是我们使用 Python 脚本对输出做了很多其他的事情。我不想在 Python 中重写整个 main(),因为我们使用了 Boost 的根查找算法和其他在 Python 中很难做到的功能。
是否可以在保留 c++ main() 的同时将 Python 绑定添加到这些函数?我以前从未做过 Python 绑定,但我看过Boost.python,因为我们已经在使用 Boost。大多数示例在 hpp 文件中使用 c++ 函数/类并将它们嵌入到 python 程序中,这并不是我们想要的。
我们想要的是让我们的 c++ 程序保持独立,这样它就可以按照用户的需要运行,并且还允许用户从 Python 程序中调用这些函数。能够使用相同的 Makefile 和 exe 会很棒。我们真的不想制作一个单独的包含绑定函数的 c++ 库;我们对制作 Python 版本的代码不感兴趣,只允许访问这些有用的功能。
谢谢
opencv - cv::ml::SVM::trainAuto 的 OpenCV Python 绑定
我想为我在 OpenCV 中的 SVM 训练估计最佳 C 和 gamma 参数。如果我正确理解主(3.1-dev)文档cv::ml::SVM::trainAuto
将非常适合我的需求(使用交叉验证来估计完美参数)。
但我找不到 trainAuto 的 Python 绑定。我尝试使用以下方法找到它:
或在 ml_SVM 对象中
但我只发现
在 cv2.ml 模块和
在 ml_SVM 对象中。trainAuto 是否有另一种“python 方式”或者绑定是否移动/丢失?我在 Ubuntu 15.10 上使用 python 3.4。