kuzubov
@kuzubov

Traceback error при выходе из программы на Python2.7 + PyQt4?

Я писал множество плагинов для 3D пакетов на Python+PyQt и все они запускались внутри тех самых пакетов для которых писались. И вот решил написать просто standalone приложение на той же связке. Взял самый простой пример прямо с документации:

import sys
from PyQt4 import QtGui

def main():
    app = QtGui.QApplication(sys.argv)
    w = QtGui.QWidget()
    w.resize(250, 150)
    w.move(300, 300)
    w.setWindowTitle('Simple')
    w.show()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()



Выполнил… Появилось окошко, порадовался и закрыл. И в python output сразу же увидел ошибку:

Traceback (most recent call last):
  File "D:\Temp\test_qt3.py", line 14, in <module>
    main()
  File "D:\Temp\test_qt3.py", line 11, in main
    sys.exit(app.exec_())
SystemExit: 0



Как то меня пугает что приложение с документации выдает ошибку при выходе. Пробовал и более сложные примеры у них же — и все выходя заканчиваются такой ошибкой. Я конечно может и придираюсь и такой выход стандартный для всех PyQt приложений — но ошибка меня раздражает и я не люблю чтобы варнинги то даже были в программе, а не говоря уже про ошибки…

В общем вопрос вот в чем — что не так в выходе из программы и почему генерируется эта ошибка и как это починить?
  • Вопрос задан
  • 3508 просмотров
Пригласить эксперта
Ответы на вопрос 1
dotsquid
@dotsquid
Это не ошибка. Это стандартное поведение sys.exit(): он бросает исключение SystemExit. Подробнее почитайте в документации.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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