Найти - Пользователи
Полная версия: Вывод ошибки от PyQt5 в консоль
Начало » Python для новичков » Вывод ошибки от PyQt5 в консоль
1 2
gmaksim
FishHook
Что “всё”? Вы же понимаете, что невозможно показать построчный вывод ошибки в скомпилированной сишной библиотеке. Ваша ошибка возникает явно в питоньем коде, поэтому она и отлавливается.
То, что вы написали, то и отлавливается.
Согласен.
gmaksim
Все же нашел более оптимальный способ отлавливания PyQt ошибок:
https://stackoverflow.com/questions/34363552/python-process-finished-with-exit-code-1-when-using-pycharm-and-pyqt5

 # Back up the reference to the exceptionhook
sys._excepthook = sys.excepthook
def my_exception_hook(exctype, value, traceback):
    # Print the error and traceback
    print(exctype, value, traceback)
    # Call the normal Exception hook after
    sys._excepthook(exctype, value, traceback)
    sys.exit(1)
# Set the exception hook to our wrapping function
sys.excepthook = my_exception_hook
 try:
    sys.exit(app.exec_())
except:
    print("Exiting")
Ошибка была в
RuntimeError: wrapped C/C++ object of type QLineEdit has been deleted
Ура.

p.s. … что еще интереснее, и уводит в проблему освещенную тут:
https://habrahabr.ru/post/210304/
Выдержка (для понимания), почему есть трудности для “вытаскивания” ошибок PyQt в консоль IDE:
Модель работы PyQt можно упрощенно представить следующим образом: для каждого публичного класса С++ создается класс-обертка в Python. Программист работает с объектом-оберткой, а она вызывает методы «настоящего» C++-объекта.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB