繁体   English   中英

检查列表索引是否存在

[英]To check whether index of list exists

有什么解决方案来检查列表索引是否存在?

以外:

  1. 使用len(list)

  2. 使用

     try: ... except IndexError: ... 

由于dict有dict.has_key(key)来检查键是否存在,是否有任何方法来检查列表的索引?

不,没有其他方法可以测试索引是否存在。

字典键不容易预测; 必须进行成员资格测试才能确定某个密钥是否有效存在,因为扫描所有密钥的效率很低。

列表不存在该问题; len(somelist)便宜(长度缓存列表对象),所以index < len(somelist)是测试一个索引是否存在,用异常处理有很大回落,如果你预计,恒生指数将在列表中方式大部分时间都是边界。

您可以使用列表推导。

index in [someList.index(item) for item in someList]:

如果列表中至少有index项,则将返回true。

对于字典,您可以执行类似的操作:

index in [someDictionary.keys().index(item) for item in someDictionary.keys()]

值得指出的是,这确实是有争议的,因为使用len(list)try ... except效果很好。 但是,嘿,您要求另一种方式,所以这是另一种方式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM