python「RuntimeError: main thread is not in main loop」の解決方法

ニューラルネットでデータ解析を進めていたところ、

学習途中で以下のようなエラーが、、、

RuntimeError: main thread is not in main loop
Exception ignored in: 
Traceback (most recent call last):
  File "C:\Program Files\Python38\lib\tkinter\__init__.py", line 4014, in __del__
    self.tk.call('image', 'delete', self.name)
RuntimeError: main thread is not in main loop
Exception ignored in: 
Traceback (most recent call last):
  File "C:\Program Files\Python38\lib\tkinter\__init__.py", line 351, in __del__
    if self._tk.getboolean(self._tk.call("info", "exists", self._name)):
:
:
:
RuntimeError: main thread is not in main loop
Tcl_AsyncDelete: async handler deleted by the wrong thread

plotを繰り返し行っていたことが原因のようでした。

一応,plt.close()をしていましたが、plt.show()せずにcloseするのは良くないみたいです。

解決策は

import matplotlib  # <--ここを追加
matplotlib.use('Agg')  # <--ここを追加
from matplotlib import pyplot as plt

Sponsored Link

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です