Форум сайта python.su
Всем добрый день.
Начал изучать Qt4, но так как не нашел нормально документации по PyQt на русском языке, взял доку по Qt4 для C++.
Я использую:
ОС - Ubuntu 15.04
ЯП - Python 3.4
GUI - PyQt4 (ставил из репов и собирал вручную результат один)
Суть проблемы в том, что в примере из документации используют QStringList из модуля QtCore, но когда я пытаюсь его даже импортировать (в консоле python) получаю ошибку
Python 3.4.3 (default, Mar 26 2015, 22:03:40) [GCC 4.9.2] on linux >>> from PyQt4.QtCore import QStringList Traceback (most recent call last): File "/usr/lib/python3.4/code.py", line 90, in runcode exec(code, self.locals) File "<input>", line 1, in <module>
/usr/bin/python3.4 /home/Vik/Projects/test_my/ex_3.py Traceback (most recent call last): File "/home/Vik/Projects/test_my/ex_3.py", line 35, in <module> test = QStringList() NameError: name 'QStringList' is not defined Process finished with exit code 1
Отредактировано MrViktor (Март 9, 2017 06:45:52)
Офлайн
MrViktorhttps://www.litres.ru/n-prohorenok/python-3-i-pyqt-razrabotka-prilozheniy-5582586/
не нашел нормально документации по PyQt на русском языке
Офлайн
MrViktorв консоли
GUI - PyQt4 (ставил из репов и собирал вручную результат один)
pydoc -p 8000
sudo apt-get install python-pip3 pip3 install PyQt4
Отредактировано vic57 (Март 9, 2017 08:43:18)
Прикреплённый файлы:
SCR.png (27,0 KБ)
Офлайн
FishHookСпасибо, смотрел в сторону этой книжки, но не смог найти. Сейчас попробую найти скан в инете. Сами ее читали? интересует в плане полезности как она?
vic57Вообще шикарно… не знал об этом, только в моем случае в консоли
pydoc3 -p 8000
Офлайн
MrViktorда не должно быть
Насколько я понял, QString и QStringList - убрали начиная с какой-то версии PyQt, адаптировали вывод под python формат.
>>> from PyQt4.Qt import * >>> l = QStringList() >>> l <PyQt4.QtCore.QStringList object at 0x10a2bea28> >>>
Отредактировано vic57 (Март 9, 2017 09:01:54)
Офлайн
vic57
вообще лучше через pip ставить
sudo apt-get install python-pip3
pip3 install PyQt4
sudo apt-get install python3-PyQt4
Офлайн
vic57Вот что нашел
да не должно быть
попробуй
Selecting Incompatible APIs PyQt4 provides limited support for multiple incompatible APIs and the ability for an application to select between them at run-time. For example, an application can choose whether QString is implemented as a Python type, or is automatically converted to and from a Python v2 unicode object or a Python v3 string object. This ability allows developers to decide how to manage the transition from an older deprecated, API to a newer incompatible API. Each API that can be selected in this way has a name and a range of version numbers. An application calls sip.setapi() to set the version number of a particular API. This call must be made before any module that implements the API is imported. Once set the version number cannot be changed. If not set then an API will use its default version. For example the following code will disable the use of QString:
import sip sip.setapi('QString', 2) from PyQt4 import QtCore # This will raise an attribute exception because QString is only wrapped # in version 1 of the API. s = QtCore.QString()
The following APIs are currently implemented: QDate v1, v2 QDateTime v1, v2 QString v1, v2 QTextStream v1, v2 QTime v1, v2 QUrl v1, v2 QVariant v1, v2
import sip test = sip.getapi('QString') print(test)
Отредактировано MrViktor (Март 9, 2017 09:33:21)
Офлайн
MrViktorтаки да
Проблема в том, что QString уже нет
Отредактировано vic57 (Март 9, 2017 09:31:45)
Офлайн
MrViktorНе читал, не вижу области применения PyQt
Сами ее читали? интересует в плане полезности как она?
Офлайн
FishHookА GUI на чем строите?
не вижу области применения PyQt
Офлайн