二回目の実行で画像が開けない。jpyterhab

実現したいこと

この命令文をjpyterhabで実行すると一回目は新しいウィンドウに画像が添付されてうまくいくのですが、二回目連続して実行するとエラーメッセージが出てきて実行できません。連続しても実行できるようにするにはどうすればいいですか?

発生している問題・分からないこと

実行すると以下のようなメッセージが表示されます。

エラーメッセージ

error

1TclError Traceback (most recent call last) 2Cell In[4], line 10 3 6 frame.pack() 4 8 my_image = tk.PhotoImage(file = "images/radio1.png") #画像のコンストラクタを使用してインスタンスを作成 5---> 10 label = tk.Label(frame, image=my_image) 6 11 label.pack() 7 13 root.mainloop() 8 9File ~\AppData\Local\Programs\Python\Python312\Lib\tkinter\__init__.py:3232, in Label.__init__(self, master, cnf, **kw) 10 3214 def __init__(self, master=None, cnf={}, **kw): 11 3215 """Construct a label widget with the parent MASTER. 12 3216 13 3217 STANDARD OPTIONS 14 (...) 15 3230 16 3231 """ 17-> 3232 Widget.__init__(self, master, 'label', cnf, kw) 18 19File ~\AppData\Local\Programs\Python\Python312\Lib\tkinter\__init__.py:2648, in BaseWidget.__init__(self, master, widgetName, cnf, kw, extra) 20 2646 for k, v in classes: 21 2647 del cnf[k] 22-> 2648 self.tk.call( 23 2649 (widgetName, self._w) + extra + self._options(cnf)) 24 2650 for k, v in classes: 25 2651 k.configure(self, v) 26 27TclError: image "pyimage3" doesn't exist

該当のソースコード

jpyterhab

1import tkinter as tk 2 3root = tk.Tk() 4 5frame = tk.Frame(root) 6frame.pack() 7 8my_image = tk.PhotoImage(file = "images/radio1.png") 9 10label = tk.Label(frame, image=my_image) 11label.pack() 12 13root.mainloop()

試したこと・調べたこと

上記の詳細・結果

パスを打ち直したりしてみたのですが、一回目に実行する分には問題ないようです。

補足

使用しているのは最新のjpyterhabのデスクトップ版です。

コメントを投稿

0 コメント