Как создать QString в PyQt4?

Я работаю в медицинской обработке изображений и обработке изображений.

Мы обрабатываем несколько ядер почти таким же способом, которым мы обработали единственные ядра - у нас уже есть несколько потоков в приложениях, которые мы пишем для имения быстро реагирующего UI.

Однако, потому что мы можем теперь, мы бросаем сильные взгляды на реализацию большинства наших операций обработки изображений или в CUDA или в OpenMP. Intel Compiler обеспечивает много хорошего примера кода для OpenMP, и является просто намного более зрелым продуктом, чем CUDA и обеспечивает намного большую установленную основу, таким образом, мы, вероятно, собираемся пойти с этим.

, Что мы склонны делать для дорогого (т.е., больше, чем секунда) операции должны разветвить ту операцию прочь в другой процесс, если мы можем. Тем путем основной UI остается быстро реагирующим. Если мы не можем, или это просто слишком неудобно или медленно для перемещения так большой памяти вокруг, операция находится все еще в потоке, и затем что операция может самостоятельно породить несколько потоков.

ключ для нас должен удостовериться, что мы не поражаем узкие места параллелизма. Мы разрабатываем в.NET, что означает, что обновления UI должны быть сделаны от Вызвать вызова до UI для имения основного обновления потока UI.

, Возможно, я ленив, но действительно, я не хочу должным быть проводить слишком много времени, понимая много этого материала когда дело доходит до параллелизации вещей как матричные инверсии и т.п.. Много действительно умных людей провело много времени, делая тот материал быстро как азотистый, и я просто хочу взять то, что они сделали и называют им. Что-то как CUDA имеет интересный интерфейс для обработки изображений (конечно, это - то, что это определяется для), но это все еще слишком незрело для такого программирования Plug and Play. Если я или другой разработчик получаем много свободного времени, мы могли бы дать ему попытку. Таким образом вместо этого, мы просто пойдем с OpenMP для создания нашей обработки быстрее (и это находится определенно на дорожной карте разработки в течение следующих нескольких месяцев).

13
задан TrakJohnson 9 February 2017 в 15:46
поделиться

3 ответа

In [1]: from PyQt4 import QtCore
In [2]: s = QtCore.QString('foo')
In [3]: s
Out[3]: PyQt4.QtCore.QString(u'foo')
7
ответ дан 1 December 2019 в 19:02
поделиться

Это зависит от вашего оператора импорта.

Если вы напишете

from PyQt4 import QtGui, QtCore

, вы должны вызвать QString с помощью

yourstr = QtCore.QString('foo')

Я думаю, вы написали это:

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

Это действительно не рекомендуется, но вы должны вызвать String с помощью:

yourstr = QString('foo')
1
ответ дан 1 December 2019 в 19:02
поделиться

В Python 3 QString по умолчанию автоматически сопоставляется с нативной строкой Python:

Класс QString реализован как сопоставленный тип, который автоматически преобразуется в строку Python и обратно. Кроме того, None преобразуется в нулевую QString. Однако пустая QString преобразуется в пустую строку Python (а не в None). (Это связано с тем, что Qt часто возвращает пустую QString, хотя, вероятно, она должна возвращать пустую QString.)

Классы QChar и QStringRef реализованы как отображаемые типы, которые автоматически преобразуются в строки Python и из них.

Класс QStringList реализован как отображаемый тип, который автоматически преобразуется в списки строк Python и обратно.

Классы QLatin1Char, QLatin1String и QStringMatcher не реализованы.

http://pyqt.sourceforge.net/Docs/PyQt4/qstring.html

16
ответ дан 1 December 2019 в 19:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: