python - 使用数组和用户输入时出现 Python 索引错误
问题描述
我正在使用 vscode 并没有用红色下划线,但是当我运行编译器时出现此错误:IndexError: list assignment index out of range, for line 16。
def QuadraticEquation():
abc = str(raw_input("In the equation ax^2+bx+c what is a, b, and c (display split each answer up by one space. EX: 1 4 5): "))
x_axis = raw_input("What is the maximum size of the graph you would like (in units EX: 10): ")
a,b,c = abc.split()
a= int(a)
b=int(b)
c=int(c)
x_values = []
y_values = []
i=0
while(i<=x_axis):
x_values.append(i)
y_values[i] = ((a*x_values[i]**2) + (b*x_values[i]) +(c))
i+=1
QuadraticEquation()
解决方案
您不能对y_values
列表中尚不存在的索引使用赋值。换句话说,y_values
一开始是空的,第一次通过while
你尝试索引元素的循环[0]
,它还不存在,因此错误。
改变:
y_values[i] = ((a*x_values[i]**2) + (b*x_values[i]) +(c))
至:
y_values.append((a*x_values[i]**2) + (b*x_values[i]) +(c))
推荐阅读
- editor - Alchemy CMS - 管理 UI - 编辑器 - 显示在所有页面区域
- excel - 添加评论时的条件格式
- php - 通过他们在 laravel 中的帖子获取类别顺序
- c++ - 除了内存分配之外,创建带有“new”和没有“new”的指针之间的区别?
- sql - 系统版本化的时态表中的 AS OF 子句如何工作?
- php - 防止普通用户进入管理页面
- django - django(2.0.8)通用视图中的内联表单集工厂
- flutter - Flutter中如何实现自定义对话框?
- sql - Postgres - 具有 WHERE AND 条件的单列上的多个条件?
- docker - 不同的操作系统是否需要不同的Docker容器