извлечь данные, полученные с 3-го сервера партии:Как проверить наличие элемента с определенным индексом в списке?
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
Как мне изменить свое состояние?
Catching 'IndexError' исключение может быть один из раствора. –
Значение 'result [38]' is None. –
Кроме того, вы можете проверить 'result [38]' для типа 'list'. Подобно 'if result и len (result)> = 38 и type (result [38]) == list и len (result [38])> = 2:' но я бы предложил вам реализовать с помощью блока try/catch фиксируя возможные исключения, такие как 'IndexError' и' TypeError'. –