Python代码运行报IndexError索引越界错误,需修改哪些内容解决?
报错根因
IndexError: index 2 is out of bounds for axis 0 with size 2 翻译为中文是索引错误:大小为2的0轴上,索引2越界。
触发报错的直接原因是:你通过np.random.choice(p_and_p_words, 2)采样得到的words数组只有2个元素,合法下标仅为0和1,而你的判断逻辑里调用了words.item(2)访问不存在的第三个元素,直接触发越界。
需修改的代码位置
根据你的实际业务需求二选一修改即可:
- 若你原本的逻辑是要校验3个单词的长度互不相同:将采样数量从2改为3即可,修改对应行代码为:
words = np.random.choice(p_and_p_words, 3) - 若你确实只需要采样2个单词:将判断条件中多余的
words.item(2)相关校验删除,两个单词长度不同的判断简化为:if len(words.item(0)) != len(words.item(1)):
内容的提问来源于stack exchange,提问作者Jeffrey23
相关产品推荐
相关产品推荐

