如何解决“ TypeError:列表索引必须是整数或切片,而不是元组”

时间:2019-07-27 19:29:17

标签: python typeerror

     12         for ii, (x, y) in enumerate(get_batches(train_x, train_y, batch_size), 1):
     13             feed = {inputs_: x,
---> 14                     labels_: y[:, None],
     15                     keep_prob: 0.5,
     16                     initial_state: state}

TypeError: list indices must be integers or slices, not tuple

2 个答案:

答案 0 :(得分:0)

错误消息指出,y是一个列表。因此,括号中不能有两个值。那就是numpy数组的工作方式。您可能应该将代码更改为以下内容:

feed = {inputs_: x,
        labels_: np.array(y)[:, None],
        keep_prob: 0.5,
        initial_state: state}

答案 1 :(得分:-1)

谢谢,但是这种方法不能解决问题。问题解决后,我找到了解决方法。

        y = np.array(y)
        feed = {inputs_: x,
                labels_: y[:, None],
                keep_prob: 0.5,
                initial_state: state}