全般

Pythonにおいて理解すべき『Pythonic』とは?

今回は、Pythonで「よりPythonic」とされるコードを書くための考え方についてご紹介します。

概要

Pythonicなコードとは、

  1. 可読性が高い(何をしているかが明確)
  2. 冗長な手続きを排除(内包表記・組み込み関数・コンテキストマネージャなどを活用)
  3. 直感的に意図が伝わる(変数名や関数名も含め、Pythonで推奨される慣習に従う)

これらを追求したコードスタイルを指します。

コードは書き手のスタイルにもよりますが、Pythonが提供する機能を活用することで、より簡潔かつ読みやすいスタイルにできます。

必ずしも「短いコード = Pythonic」というわけではなく、「伝えたいことがシンプルに伝わるか」が最重要のポイントになります。

今回は、「5の数の合計を求める処理」を例に、Pythonicなコードとそうでないコードを紹介します。

非Pythonicなコード

サンプル

下記のコードでは、1から5までの数字を加算しています。

実行結果

実行結果

15

単純に、合計を求めるような典型的な処理であっても、forループを回して自前で加算するという冗長な書き方になっています。

Pythonicなコード

サンプル

先ほどと同じように、1から5までの数字を加算しています。

実行結果

実行結果

15

組み込み関数sum()を使うことで、合計を取りたい意図がダイレクトに伝わります。

他にも、Pythonには、sum(), max(), min(), any(), all()など、さまざまな組み込み関数が存在し、活用するとコードが明確・簡潔になります。

最後に

状況や好みに応じて使い分け、より理解しやすく保守しやすいコードを書くのがPythonicの第一歩といえるでしょう。