Python делать, если что-то не вызовет ошибку - PullRequest
0 голосов
/ 12 мая 2019

Я программирую проект, и мне нужно проверить, существует ли определенный индекс. Мне было интересно, если есть способ сделать это с помощью оператора python if. Я думал о том, как: if list[100].will_not_cause_error: любая помощь будет оценена!

Ответы [ 2 ]

1 голос
/ 12 мая 2019

Питонический способ состоит в том, чтобы попробовать - кроме этого:

try:
    do_something(list[100])
except IndexError:
    print("list do not have 100")

, но если вы настаиваете на использовании if, вы можете проверить длину:

if len(list) < 101:
   print("list do not have 100")
0 голосов
/ 12 мая 2019

Вы можете проверить длину списка:

if len(mylist) > 100):
    # len[100] will be ok to use

Если это не простой список, вы можете попытаться получить доступ к индексу и поймать IndexError:

try:
    mylist[100]
expect:
    # no index 100 in the list
else:
    # index 100 is OK...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...