以下の内容はhttps://nishiohirokazu.hatenadiary.org/entry/20090207/1234017874より取得しました。


例外を投げうる関数の呼び出しに特にオーバーヘッドはない

そうそう、以前Twitterで「Pythonの例外を投げる関数と投げない関数では呼び出しコストに差があるのか」的な話があったときに書いたコード、このまま埋もれても無駄だし貼付けておこう。

import timeit

print timeit.Timer("foo(1)", setup="""
def foo(x):
    if x:
        return None
    else:
        return x
""").repeat()

print timeit.Timer("bar(1)", setup="""
def bar(x):
    if x:
        return None
    else:
        raise NotImplemented
""").repeat()
[0.24111700057983398, 0.22863888740539551, 0.22955012321472168]
[0.23151803016662598, 0.23359298706054688, 0.2297508716583252]



以上の内容はhttps://nishiohirokazu.hatenadiary.org/entry/20090207/1234017874より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14