我提取第三方服務器接收到的數據:如何檢查列表中是否存在具有特定索引的元素?
data = json.loads(response)
if data:
result = data.get('result')
if result and len(result)>=38 and len(result[38])>=2:
for item in result[38][2]:
...
條件的想法是檢查列表包含元素與索引38(result[38]
)和子元素與索引2(result[38][2]
),但看起來像這是行不通的,因爲我得到以下例外情況 -
if result and len(result)>=38 and len(result[38])>=2:
TypeError: object of type 'NoneType' has no len()
或
for item in result[38][2]:
TypeError: 'NoneType' object is not iterable
我應該如何修改我的狀況?
捕獲'IndexError'的例外可能是解決方案之一。 –
'result [38]'的值爲None。 –
此外,您可以檢查'list'類型的'result [38]'。像'if result和len(result)> = 38和type(result [38])== list和len(result [38])> = 2:'但是我建議你用'try/catch'塊捕獲可能的異常,如「IndexError」和「TypeError」。 –