【问题标题】:Where does ActivePython install pyqt4?ActivePython 在哪里安装 pyqt4?
【发布时间】:2011-08-06 17:29:53
【问题描述】:

我目前使用的是 Windows XP 机器(32 位)。我是 Scribus 的新手,并且喜欢使用它而不是其他昂贵的桌面出版程序。在 Scribus 中,我有一个要运行的预先编写好的脚本。脚本的开头包含:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from PyQt4.QtCore import *
from PyQt4.QtGui import *

class DockDialog(QDockWidget):

我已经通过 ActivePython 安装了 Python 3.2(在尝试从 python.org 安装之后)。安装后,我打开一个 DOS 窗口并输入 pypm install pyqt4,据我所知,它已正确安装。然后我尝试在 Scribus 中运行脚本并收到以下消息:

Traceback (most recent call last):
  File "<string>", line 8, in ?
  File "C:/Program Files/Scribus 1.3.3.14/share/scripts/Scribus-DockWidgets/DockWidgets.py", line 4, in ?
    from PyQt4.QtCore import *
ImportError: No module named PyQt4.QtCore

然后我尝试重新安装 PYQT4,通过输入我之前的内容,我被告知 PYQT4 已经通过以下方式安装:

skipping "pyqt4" already installed at "%APPDATA%\Python" (3.2)

在所有目录中查看 c:\Python32 后,我找不到任何 PYQT 文件。它们安装在哪里?如何确保脚本能够找到运行所需的 PYQT4 文件?

我的 PATH 变量是:

C:\Python32\;C:\Python32\Scripts;

最终,我希望帮助 scribus 脚本正常工作。

感谢您的帮助!

【问题讨论】:

    标签: python pyqt pyqt4 activepython pypm


    【解决方案1】:

    键入此命令以查看 PyQt 的安装位置:

    pypm files --full-path pyqt4
    

    默认情况下,PyPM 将软件包安装到您的 %APPDATA%\Python 目录中。如果要全局安装到 C:\Python32 中,请使用 -g 选项(例如:pypm -g install pyqt4

    我如何确保脚本能够找到运行所需的 PYQT4 文件

    您确定要调用 Python 3.2 吗?如果一切都失败了,请尝试运行pypm -g install pyqt4

    【讨论】:

    • 感谢您的快速回复。我按照你对全局安装的建议做了(但是我没有卸载 %APPDATA% 安装)当我运行 --full-path 时,我得到一个 %APPDATA% 而不是 c:\Python32\sip\pyqt4 的列表,我现在也在见文件。最后我仍然尝试在 Scribus 中运行脚本,仍然收到与之前相同的错误消息“没有名为 pyqt4.QTCore 的模块。我尝试运行的脚本可以在这里找到:blog.oak-tree.us/index.php/2010/08/25/scribus-dockwidgets Dock Widget 脚本
    • @Brian - 要在 global 安装中列出文件,您需要运行 pypm -g files --full-path pyqt4。尝试在import PyQt4.QtCore 行上方添加import sys; print(sys.path),然后报告您看到的打印内容。