синтаксическая ошибка python qt

У меня есть виджет верхнего уровня, который выдает синтаксическую ошибку в python. поднять() в строке 15. Здесь используются привязки python Qt. Я знаю, что повышение — это зарезервированное слово Python. Я ищу, как вызвать функцию Qt "raise()" с привязками python.

#!/usr/bin/python

# simple.py

import sys 
from PyQt4 import QtGui

app = QtGui.QApplication(sys.argv)

widget = QtGui.QWidget()
widget.resize(250, 150)
widget.setWindowTitle('simple')
widget.show()
widget.activateWindow ()
widget.raise() 

sys.exit(app.exec_())

person Philip Schlump    schedule 02.01.2010    source источник


Ответы (1)


«поднять» — это ключевое слово (зарезервированное слово) в Python. Таким образом, вы не можете использовать его. И PyQt4 определенно не использует его, как вы думаете, потому что это ключевое слово, поэтому никакое расширение не может. Это похоже на то, что вы не можете использовать «от» для имени переменной (любимая мозоль: в Python нет переменных, но я отвлекся...)

Как подсказка, это также выделено подсветкой синтаксиса SO.

Немного интерактивного питона... и это raise_. Да, с подчеркиванием в конце. Довольно стандартный метод, когда у вас есть ключевое слово в качестве метода/функции.

person Jürgen A. Erhard    schedule 02.01.2010
comment
Мне нужно вызвать функцию raise(), чтобы поднять окно на вершину стека. На самом деле вопрос в том, что они вызвали функцию повышения(), поскольку это зарезервированное слово в pyton? - person Philip Schlump; 02.01.2010
comment
И я даже не Qt человек, я знаю GTK+ немного лучше, и я даже не знаю GTK+ так хорошо (больше). ;-) - person Jürgen A. Erhard; 02.01.2010
comment
Для полной ясности вам следует вызвать widget.raise_() (как вы сделали для app.exec_()). И exec, и raise являются зарезервированными словами в Python, но их нет в C++, для которого был разработан Qt. - person Lukáš Lalinský; 03.01.2010