python - list.index() 找不到现有元素
问题描述
我有一个二进制值的嵌套列表(0,1)
作为整数。
我知道我们不能递归地进入多维列表来查找元素,所以我放了一个循环来获取单个列表。
然后调用list.index(0)
它会找到正确的 0 索引,但是当我调用list.index(1)
它时会返回一个值错误。我主要是在寻找解释而不是解决方案。
代码:
def getA(a):
b = 0
m = []
for j in range(a):
b = b+j
for x in range(b+1):
m.append(getR(x))
for z in m:
print(z.index(1)) # Throws ValueError: 1 is not in list
但是打印z:
[0, 0, 0, 0, 0]
[0, 0, 0, 1, 1]
[0, 0, 1, 0, 1]
[0, 0, 1, 1, 0]
[0, 1, 0, 0, 1]
[0, 1, 0, 1, 0]
[0, 1, 1, 0, 0]
[1, 0, 0, 0, 1]
[1, 0, 0, 1, 0]
[1, 0, 1, 0, 0]
[1, 1, 0, 0, 0]
最后打印 z.index(0):
0
0
0
0
0
0
0
1
1
1
2
解决方案
list.index(1) 返回值错误,因为您的第一个列表 ([0, 0, 0, 0, 0]) 中没有“1”。如果您尝试 list.index(2),您会看到类似的响应
推荐阅读
- java - Maven 找不到子模块的本地 POM 文件
- android - 如何在段落的单词之间添加空格以在Android的Textview中从末尾删除空格?
- entity-framework-core - EF Core 5 HasDefaultValue FluentAPI
- flutter - 未处理的异常:类型 '(String) => Null' 不是类型 '((dynamic) => dynamic)?' 的子类型
- python - 仅当鼠标向上移动时,tkinter 事件 xy 鼠标位置错误值?
- python - Python中的plyer通知?
- c# - System.Text.Json.Serialization.JsonConverter
也为可为空的 DateTime 属性执行 - android - Android recyclerview 在数据更改后显示更多值
- javascript - 从promise回调函数节点js获取值
- javascript - 如何使用 react js 中的 put 请求将当前日期时间发送到 Rest Api?