python列表索引负数_python – 如何检查列表索引是否存在?
你只需要檢查你想要的索引是否在0的范圍和列表的長度,像這樣
if 0 <= index < len(list):
實際上是內部評估
if (0 <= index) and (index < len(list)):
因此,該條件檢查索引是否在[0,列表的長度]范圍內.
注意:Python支持負數索引.引用Python documentation,
If i or j is negative, the index is relative to the end of the string: len(s) + i or len(s) + j is substituted. But note that -0 is still 0.
這意味著每當使用負數索引時,該值將被添加到列表的長度,并將使用結果.所以,列表[-1]會給你元素列表[-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 value.然后不會否定它,所以if條件將被評估為Truthy.所以,它將返回False,即使一個元素實際存在于列表中.
總結
以上是生活随笔為你收集整理的python列表索引负数_python – 如何检查列表索引是否存在?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何阅读3,500万个博客?
- 下一篇: websocket python爬虫_p