问题标签 [python-sip]

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.

0 投票
0 回答
83 浏览

python - SIP C++ 文档

我有一个 Python 项目,它使用 SIP 在一些自定义 C++ 代码之上创建 python 包装器。是否有任何工具足够智能,可以自动读取 SIP 规范并为 Python 类生成文档?我试过 pdoc 和 doxygen。在我进入 Sphinx 之前,我需要一些建议。

0 投票
0 回答
1611 浏览

python - RuntimeError:sip 模块实现 API v11.0 但 PyQt4.QtCore 模块需要 API v11.1

我正在尝试使用自制软件从这个 repo 安装 gnuradio。我在 OSX 10.10.2 上。

安装一直失败,并说我的 sip 和 pyqt 模块的 API 版本不匹配。

我做了一些搜索,大多数事情似乎表明我应该删除 sip 和 pyqt,然后安装 sip,并针对它构建 pyqt。

我已经多次尝试使用这种方法brew uninstall sipbrew uninstall pyqt然后重新安装它们,但它似乎不起作用。

感谢您的任何建议!

0 投票
1 回答
12382 浏览

python - 从 Python 运行 QGIS 时没有名为 sip 的模块

我安装了 QGIS Valmiera 2.2.0 并使用此文档启动了一个简单的 python 脚本。

我很难过,因为总是当我使用

我收到了消息ImportError: No module named qgis.core。我用声明解决了这个问题

sys.path.extend([r"C:\Program Files (x86)\QGIS Valmiera\apps\qgis\python"])

使用正确的 python 路径。然后我希望它可以工作,但我遇到了下一条错误消息:

我尝试再次做同样的事情,添加 qgis 的子文件夹,它可能连接到 sip,但没有成功。

我猜它正在寻找的 sip.exe 实际上位于C:\Program Files (x86)\QGIS Valmiera\apps\Python27路径中。

预装的功能中是否缺少任何东西或可能是什么问题?

感谢您的任何提示!

更新: 对于任何有兴趣的人:我执行了以下步骤来安装 sip 库,但到目前为止还没有最终成功:

0 投票
0 回答
72 浏览

python - 在交互模式和普通模式下使用 SIP 库时的不同行为

我正在尝试按照此页面上的教程进行操作(我还添加了自己的简单“获取”方法)。无论我使用交互模式还是普通 Python 模式,我都会得到不同的结果。

正常模式

word_test.py

一切都按预期工作!耶!

交互模式

foo.get() 和 foo.reverse() 都返回一个空字符串!是什么赋予了?

我的源文件

word.sip

单词.cpp

单词.h

配置文件

用于编译 lib 并将其移动到 /usr/lib 的 Shell 脚本

run.sh(需要root权限)

0 投票
1 回答
1291 浏览

qt5 - 安装 PyQt 5.4.2 时出错:sip api 参考

我需要帮助来弄清楚为什么会出现此错误:

我在 Ubuntu 14.04 的 virtualenv 中安装 PyQt 5.4。我已经安装了 SIP(​​版本 4.16.8,which sip返回 virtualenv 中的那个),并且在配置运行期间似乎一切都很好:

输出(除其他外):

告诉我是否需要更多信息。我还尝试在 Ubuntu 存储库的 qt 版本上安装 PyQt 5.2,但我遇到了同样的错误。我能做些什么?

编辑:

我改用克服了这个问题sip 4.16.7。但我认为这不是解决方案,所以如果有人知道为什么最新版本不起作用,请详细说明。

0 投票
0 回答
255 浏览

python - 使用 PyQt4 和 SIP 构建复杂性;我如何在 Windows 8.1 机器上从 2.7.10 降级到 Python 2.7.9?

我是 Python 新手,在尝试编译我需要运行的 PyQt4 安装时遇到了一个奇怪的构建错误,因为它依赖于另一个模块。我在使用 minGW 作为编译器时遇到了一个困难而复杂的构建错误,我的日志看起来与这篇文章中的类似。

但是我不明白关于重新制作 Python27_a 的决议。此外,我没有使用虚拟机。如果有帮助,我可以提供我的日志,但需要相当多的时间来追溯我的步骤并重新创建它们。

一般来说,我遵循本指南(这是类似问题的另一个实例)来安装 PyQt4,因为源代码中的安装说明并不完全清楚。

这是具有依赖关系的模块: https ://github.com/waveform80/compoundpi

0 投票
1 回答
42 浏览

qt - sipMalloc 用于分配缓冲区时未定义

大家好,我正在 QT 上开发一个应用程序,我需要从我的应用程序运行 Python 脚本。我正在尝试使用 sipMalloc 函数分配一些内存。这是在 python-SIP 中提供的。我正在使用 PyQt 4 和 python v2.7。

我正在导入 sip.so 我的脚本存在于 /usr/lib/python2.7/dist-packages/

NameError:未定义名称“sipMalloc”

如果有任何其他替代方法可以在 python 脚本 wrt QT Application plz share 中分配内存。谢谢

******已解决****** 我放弃了使用 SIP 的想法。相反,我使用 SWIG 和 python 来创建导出函数库。并且 SWIG 还提供了使用 malloc 分配内存的选项,可以直接在 Python 脚本中使用。谢谢您的帮助。

0 投票
3 回答
46407 浏览

python - 如何在 Windows 7 上安装 SIP 和 PyQT

我是 Python 环境的新手,并且很难在我的 Win 7 机器上安装 SIP 和 PyQt。

这是我到目前为止所做的,

  1. 我已经下载了SIP-4.16.9并从 zip 文件夹中提取了文件
  2. 然后将提取的文件夹复制到C:\Python34\Lib
  3. 启动命令提示符(cmd)并将路径更改为C:\Python34\Lib
  4. 然后当我进入python configure.pyC :\Python34\Lib并得到如下响应

在此处输入图像描述

  1. 在这个阶段我不确定它是否安装成功,为了验证我在(根据上面的响应 - 红色)寻找SIP.hC:\Python34\Include,但我找不到任何这样的头文件,所以我假设安装还没有成功了。

任何人都可以帮助我,我在这里缺少什么?

附加系统信息:

  • 视窗 7 64 位
  • 蟒蛇 3.4
  • 环境变量(路径:C:\Python34;C:\Python34\Lib;C:\Python34\Lib\site-packages)

注意:之前发布了几个问题,但到目前为止都没有帮助,我确定我一定错过了一些愚蠢的东西。

谢谢你的时间。

0 投票
1 回答
659 浏览

qt - PyQt4 4.11.4 不再接受 QBrush(None) 或 QColor(None)

使用 PyQt4,我一直能够使用 None 作为参数初始化 QBrush 和 QColor(不创建颜色等):

但是在我从 4.11.3 升级到 4.11.4(这是一个小升级)之后,我发现这些不再被接受:

我试图搜索 4.11.3 和 4.11.4 之间的更改,但看不到任何解释这一点的相关信息。我开始怀疑我是否在寻找正确的东西。

这是由 Qt 的变化引起的吗?还是 PyQt4?还是python-SIP?

此外,我实际上并不了解 Qt 中的底层(C++)调用是什么。它实际上是在调用 QBrush() 和 QColor() 还是试图将 Python None 更改为 c null?

谢谢,我希望我没有错过一些明显的在线内容。

0 投票
2 回答
1176 浏览

python-2.7 - python2.7 sip 无尽的makefile

这将是我的第一个问题。我已经搜索了其他问题,但不幸的是,他们都没有解决我的问题。

我在 Win7 上运行 32 位 Python (2.7)。我想安装 PyQt4。

我已经下载了 PyQt-win-gpl-4.11.4.zip 和 PyQt4-4.11.4-gpl-Py2.7-Qt4.8.7-x32.exe 文件:https://riverbankcomputing.com/software/pyqt/download关联。那里写着:“在构建 PyQt4 之前,您必须已经构建并安装了 SIP”。因此,我下载了“sip-4.16.9”。

我在安装过程中遵循了这些步骤:http: //pyqt.sourceforge.net/Docs/sip4/installation.html。我成功执行了 configure.py 脚本。但是,当我尝试通过运行 make 命令构建 SIP 时,我有一个无限循环,如下所示:

C:\Python27\sip-4.16.9>make cd sipgen make make[1]: Entering directory '/c/Python27/sip-4.16.9' cd sipgen make make[2]: Entering directory '/c/Python27/sip-4.16.9' cd sipgen make make[3]: Entering directory '/c/Python27/sip-4.16.9'

……等没完没了

我怎么解决这个问题?

提前致谢。