Python。检查索引是否存在于可能的字典列表中

Osc*_*vis 5 python arrays dictionary list python-3.x

我有这个:

list_name = [0, 1, 2, 3]
list_name[0] = {}
list_name[0]['test'] = 'any value'
Run Code Online (Sandbox Code Playgroud)

我想知道列表中的某个键是否存在。通常我使用:

if 3 not in list_name:
    print("this doesn't exist")
else:
    print("exists")
Run Code Online (Sandbox Code Playgroud)

例如,对 3 号进行测试是有效的。它说“存在”。如果我检查号码 999 是否有效,它会说“这个不存在”。

问题是它不适用于 0。如您所见,列表中的 0 值有一个字典。我需要检查列表中是否存在 0 (不管它是否有字典)。如何实现这一目标?使用python3,谢谢。

Aar*_*sen 5

如果0列表中存在元素,则列表的长度必须大于零。所以你可以使用:

if len(list_name) > 0:
    print("0 exists")
else:
    print("0 does not exist")
Run Code Online (Sandbox Code Playgroud)

作为旁注,{}是字典,而不是数组。


Art*_*ier 5

用于try except检查索引是否存在

try:
    if list_name[6]:
        print("exists")

except IndexError:
    print("this doesn't exist")
Run Code Online (Sandbox Code Playgroud)

输出

这不存在