#python #try-catch
#python #попробуйте-поймайте
Вопрос:
[После нескольких лет программирования я понял, что мой вопрос вообще не имеет смысла 🙂 В любом случае спасибо за вашу помощь!]
У меня есть этот код:
def try_(things):
try:
return things
except:
return None
Но я хочу, чтобы этот вызов привел к следующему результату:
try_([1,2,3][2]) -> 3
try_([1,2,3][4]) -> Error (But I want it to return None)
Комментарии:
1. Это очень неясно. Возврат сам по себе никогда не может вызвать ошибку, поэтому я не понимаю, что вы пытаетесь поймать. Пожалуйста, покажите ваш фактический код.
2. Если call
try_([1,2,3][4])
, то исключение происходит до вызова вашейtry_
функции. Его невозможноtry_
поймать.
Ответ №1:
Вам нужно передать индекс в качестве параметра:
def try_(things, index):
try:
return things[index]
except:
return None
Назовите это так:
try_([1,2,3], 2) -> 3
try_([1,2,3], 4) -> None