============================================ 7:コレクションを引数にせずintやstrを受け取る ============================================ 関数の引数にはどういった値を期待するのが良いでしょうか?  関数の引数を考えることは、関数の入力仕様を決めることなのでとても重要です。 次の関数は何が問題でしょうか? 具体的な失敗 ====================== .. code:: python def calc_tax_included(item, tax_rate=0.1): return item['price'] * (1 + tax_rate) この ``calc_tax_included`` は引数に ``item`` (商品を表す辞書)を期待しています。 これでは単に「消費税を計算したい」という場合にも、毎度「 ``'price'`` キーを持つ辞書」を用意する必要があります。 関数の再利用性が低くなってしまいます。 ベストプラクティス ============================ 関数の引数は数値(int)や浮動小数点数(float)、文字列(str)など、 :index:`コレクション` でない値を受け取るのが良いでしょう。 .. code:: python def calc_tax_included(price, tax_rate=0.1): return price * (1 + tax_rate) 辞書を受け取らずに数値で受け取る関数にすることで、単に消費税込みの金額を計算したい場合にも ``calc_tax_included`` 関数が使えます。 .. omission::