2013-03-18 7 views
1

Мне просто интересно, если это существует. После программирования python в течение большей части года я никогда не сталкивался с этим.Проверка исключения одного оператора

Есть функция питона, который с скомпилированным (для быстрого доступа в постижениях), который проверяет исключение:

Функции вроде следующий:

def no_exception(function, *args, **kwargs): 
    try: 
     function(*args, **kwargs) 
    except Exception: 
     return False 
    return True 

Вы можете использовать его в этом случае

# values is full of data 
new_values = [float(n) if no_exception(float, n) else n for n in values] 
+3

Обработка исключений является основой для Python, почему бы не так быстро? –

+0

Значения списков значительно замедляются, если вам нужно делать какие-либо не-C-вызовы - или, по крайней мере, так я понимаю. –

ответ

1

Нет

по крайней мере, не в стандартной библиотеке. В противном случае метод assertRaises в модуле unittest Python будет использовать его. См.: http://pythonhosted.org/gchecky/unittest-pysrc.html#TestCase.failUnlessRaises

Вы можете, конечно, легко написать свою собственную реализацию c.

+0

Спасибо за ответ! По какой-то причине я был уверен, что что-то пропустил, но похоже, что я этого не сделал :) –

Смежные вопросы