python - 为什么特定的索引位置不适用于 .remove?
问题描述
我正在尝试做 Gradebook python 项目。出于某种原因,我收到特定索引的值错误。除了特定索引外,我尝试过的数组中的其他索引工作正常。谁能告诉代码有什么问题:
last_semester_gradebook = [
["politics", 80],
["latin", 96],
["dance", 97],
["architecture", 65],
]
# list called subjects
subjects = ["physics", "calculus", "poetry", "history"]
# list called grades
grades = [98, 97, 85, 88]
# gradebooks
gradebook = [
[subjects[0], grades[0]],
[subjects[1], grades[1]],
[[subjects[2], grades[2]]],
[subjects[3], grades[3]],
]
print(gradebook)
# Adding additional grades
gradebook.append(["Computer science", 100])
gradebook.append(["Visual arts", 93])
# adding 5 points
gradebook[-1][-1] = (93 + 5)
print(gradebook)
gradebook.remove(['poetry', 85])
print(gradebook)
除第二个索引外,其他索引位置有效。先感谢您。
解决方案
重新格式化代码后,很明显你对第二个索引做了一些不同的事情:
gradebook = [
[subjects[0], grades[0]],
[subjects[1], grades[1]],
[[subjects[2], grades[2]]],
[subjects[3], grades[3]],
]
大概应该是:
gradebook = [
[subjects[0], grades[0]],
[subjects[1], grades[1]],
[subjects[2], grades[2]],
[subjects[3], grades[3]],
]
推荐阅读
- css - 添加 runat=server 导致 css 不被应用
- python - Python:为什么我的整数在 np.genfromtxt 读入时被转换为奇怪的负数
- mysql - 显示 MySQL 中选择的数据以外的数据
- ruby-on-rails - Rails:在表单中自动分配参数
- java - 通过 java/kotlin 中的 inject() 将变量传递给类构造函数
- algorithm - 查找图的最大子集
- excel - Excel 公式 - 根据来自不同表的多个条件返回唯一的范围计数
- javascript - requestIdleCallback 和 setImmediate 的区别?
- angular - 如何读取组件中的http状态码错误
- python - 使用循环变量时,闭包在返回函数中如何操作?