2013-03-18 52 views
1

我只是好奇,如果這存在。在編寫python一年的更好的一部分後,我從來沒有遇到它。單個語句異常檢查

是否有檢查異常的Python函數是C-編譯(在內涵更快的訪問):

函數如下所示:

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的核心,爲什麼不那麼快? – 2013-03-18 15:41:50

+0

如果您必須進行任何非C調用 - 或者至少這是我的理解,列表解析會顯着減慢。 – 2013-03-18 16:55:17

回答