繁体   English   中英

为什么会出现“ IndexError:列表索引超出范围”错误?

[英]Why do I get a “IndexError: list index out of range” error?

我正在尝试在python中创建冒泡排序,但我一直收到错误代码:“ IndexError:列表索引超出范围”。 我不确定我哪里出错了,因为我不知道我的代码超出了范围:

def swaps():
    while dataset[i] > dataset[i+1]:
        temp = dataset[i]
        dataset[i] = dataset[i+1]
        dataset[i+1] = temp
        print (dataset)

dataset = ["6", "3", "5", "2", "4", "1"]
newset = ["0", "0", "0", "0", "0", "0"]

for i in range(0,6):
    newset[i] = swaps()

任何帮助或建议,将不胜感激! X

range(0, 6) = [0, 1, 2, 3, 4, 5] 5 那么5 + 1 = 6 并且您在dataset[6]没有项目。

正如Zach King指出的那样-在这种情况下使用全局变量并不是一种好习惯,将对象作为参数传递给函数会更好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM