私は裸の関数の代わりにクラスとメソッドを扱うのが好きです。私は、実行速度、メモリ使用量、またはその他の面で特定のパフォーマンスに影響があるかどうか疑問に思っています。他のテストで関数の代わりにメソッドを使用すると、パフォーマンスに影響はありますか?
import timeit
class Hello:
def hello(self):
x = 9 * 8 + 3**5
def world():
x = 9 * 8 + 3 ** 5
print(timeit.timeit(world, number=10000000))
h = Hello()
print(timeit.timeit(h.hello, number=10000000))
# 0.8460009839758439
# 0.8781686117747095
を私は他に比べて一つのケースで使用されているRAMを見ていない:
簡単なテストは両方とも同じようにうまく機能することを示しています。
関数の代わりにクラス/メソッドを使用すると、パフォーマンスが低下する特定のケースがありますか?
注:私はない美的な側面
ラムダでラッピングし、もう一度テストしてみてください。 –