要素の検索
適切なデータ構造を使うと、コードのパフォーマンスは大きく向上します。たとえば、データから特定の要素を探したい場合、list と set のどちらを使うかを選ぶ必要があります。この演習では、pytest でパフォーマンステストを実装し、in 演算子を2つのデータ構造(list と set)にそれぞれ適用したときの速度を比較します。pytest パッケージはすでにインポート済みです。
この演習はコースの一部です
Pythonによるテスト入門
演習の手順
- テスト関数の引数として
benchmarkを渡します。 - その後、テスト関数内で
benchmark()を呼び出し、最初の引数にfind()を渡します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
def create_list():
return [i for i in range(1000)]
def create_set():
return set([i for i in range(1000)])
def find(it, el=50):
return el in it
# Write the performance test for a list
def test_list(____):
____(____, ____)
# Write the performance test for a set
def test_set(____):
____(____, ____)