Ошибка типа: show() принимает 1 позиционный аргумент, но было задано 2

#python-3.x #typeerror

#python-3.x #ошибка типа

Вопрос:

Приведенный ниже простой код выдает ошибку в заголовке. Компилятор жалуется, что plt.show() было передано 2 позиционных аргумента, но ожидался только один. Однако, как вы можете видеть из кода, был задан только один аргумент «fig1»?

 def test_plot_episode_stats(stats):
    fig1 = plt.figure(figsize=(10, 5))
    plt.plot(stats.episode_lengths)
    plt.show(fig1)
    return fig1

EpisodeStats = namedtuple("Stats", ["episode_lengths", "episode_rewards"])
 

если name == ‘main‘:

 stats = EpisodeStats(
    episode_lengths=np.random.randint(10, size=10),
    episode_rewards=np.random.randint(10, size=10))
test_plot_episode_stats(stats)
 

Комментарии:

1. plt.show(fig1) передает два аргумента: self (что на самом деле plt ), и fig1 . Вы уверены, что не хотели делать fig1.show() без аргументов?