解決jupyter運(yùn)行pyqt代碼內(nèi)核重啟的問(wèn)題
在jupyter notebook或者是 Qtconsole下編譯運(yùn)行一個(gè)簡(jiǎn)單的pyqt程序,總是報(bào)錯(cuò):
The kernel appears to have died. It will restart automatically.
from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5.QtCore import * import sys app = QApplication(sys.argv) window = QWidget(); window.show() app.exec_()
在網(wǎng)上找了半天原因,終于在一個(gè)小角落發(fā)現(xiàn)了問(wèn)題所在?,F(xiàn)在記下來(lái)。
這是因?yàn)閖upyter本身也是用pyqt編寫(xiě)的,python同時(shí)只能運(yùn)行一個(gè)內(nèi)核。在上述代碼最后一行一下子把內(nèi)核給停止了,所以就導(dǎo)致了重啟。
改成
sys.exit(app.exec_())
這樣再運(yùn)行結(jié)束程序是只會(huì)結(jié)束本程序 不會(huì)終止內(nèi)核 。問(wèn)題解決。
但是這樣也引入了一個(gè)新的問(wèn)題
An exception has occurred, use %tb to see the full traceback
因?yàn)檫@個(gè)程序直接調(diào)用sys.exit直接終止的 。不過(guò)影響不大。
總結(jié):這兩個(gè)錯(cuò)誤都是在IPython交互環(huán)境下才會(huì)報(bào)錯(cuò),腳本運(yùn)行時(shí)不會(huì)報(bào)錯(cuò)。如果對(duì)報(bào)錯(cuò)介意的話 ,就還是使用命令行執(zhí)行程序吧。
以上這篇解決jupyter運(yùn)行pyqt代碼內(nèi)核重啟的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python實(shí)現(xiàn)批量將MP3音頻轉(zhuǎn)為WAV格式詳解
這篇文章主要介紹了通過(guò)Python實(shí)現(xiàn)將MP3音頻轉(zhuǎn)為WAV格式的方法,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,感興趣的可以了解一下2021-12-12Pycharm中import torch報(bào)錯(cuò)的快速解決方法
這篇文章主要介紹了Pycharm中import torch報(bào)錯(cuò)的快速解決方法,很多朋友容易碰到這個(gè)問(wèn)題,今天小編特此把解決方案分享到腳本之家平臺(tái)供大家參考,需要的朋友可以參考下2020-03-03深入解析Python中的__builtins__內(nèi)建對(duì)象
__builtins__ 是內(nèi)建模塊__builtin__中的對(duì)象,使用Python中的內(nèi)建函數(shù)時(shí)會(huì)通過(guò)__builtins__引導(dǎo),這里我們就來(lái)深入解析Python中的__builtins__內(nèi)建對(duì)象,需要的朋友可以參考下2016-06-06pygame游戲之旅 計(jì)算游戲中躲過(guò)的障礙數(shù)量
這篇文章主要為大家詳細(xì)介紹了pygame游戲之旅的第8篇,教大家實(shí)現(xiàn)游戲中躲過(guò)障礙數(shù)量的計(jì)算,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11Python實(shí)現(xiàn)列表轉(zhuǎn)Excel表格的第一列
這篇文章主要為大家詳細(xì)介紹了如何將Python中的列表轉(zhuǎn)換為Excel表格的第一列,并通過(guò)案例和代碼展示具體的操作步驟,希望可以幫助大家快速掌握這一技能2024-04-04