如何检查列表索引是否存在?

桑德拉:

好像

if not mylist[1]:
    return False

不起作用

thefourtheye:

您只需要检查所需的索引是否0在列表的范围内和列表的长度内,就像这样

if 0 <= index < len(list):

它实际上在内部被评估为

if (0 <= index) and (index < len(list)):

因此,该条件检查索引是否在[0,列表长度]范围内。

注意: Python支持否定索引。引用Python 文档

如果ij为负,则索引相对于字符串的结尾:len(s) + i或被len(s) + j替换。但是请注意-0仍为0。

这意味着,每当您使用负索引时,该值都会添加到列表的长度中,并且将使用结果。因此,list[-1]将为您提供元素list[-1 + len(list)]

因此,如果要允许使用负索引,则只需检查索引是否不超过列表的长度即可,如下所示

if index < len(list):

另一种执行此操作的方法是,除了IndexError,像这样

a = []
try:
    a[0]
except IndexError:
    return False
return True

当您尝试以无效索引访问元素时,将IndexError引发。因此,此方法有效。


注意:您在问题中提到的方法有问题。

if not mylist[1]:

可以说1是的有效索引mylist,如果它返回Falsy值然后not将其否定,以便将if条件评估为“真”。因此,False即使元素确实存在于列表中,它也会返回

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何检查列表项之前的索引是否存在?

如何检查项目是否存在于字符串列表中,以及是否存在,获取其索引

如何检查字符串列表及其索引中是否存在特定字符串

如何检查列表中是否存在值?

如何检查列表中是否存在整数?

反复检查列表以查看是否存在索引?

Flutter-检查列表中是否存在索引

如何检查List <string>中是否存在特定的字符串,以及是否不从列表中删除索引?

如何检查嵌套列表是否存在和嵌套(如果存在)?

如何检查ElasticSearch索引是否存在并准备就绪?

如何检查某个熊猫索引处的数据是否存在?

如何检查Lucene索引中是否存在文件?

Java:ArrayList-如何检查索引是否存在?

如何使用Ruby和/或Rails检查数组索引是否存在

如何检查表中是否存在某个索引?

如何在Laravel迁移中检查索引是否存在?

如何检查我的数组中是否存在索引

检查数字是否存在于子列表中并在python中返回子列表的索引

检查列表中是否存在

检查是否存在子列表

如何检查列表中是否已存在相同的日期?

如何检查对象列表中是否存在枚举值

如何检查列表元素中是否存在值?

如何使用XPath检查元素列表中是否存在值?

如何检查列表中是否存在特定值?

如何检查Java列表中是否存在值

如何检查列表的“未排序版本”是否已存在?

如何检查列表中是否存在日期以更改列的值?

如何遍历嵌套字典并检查列表中是否存在键