Pythonできれいなコードを書くコツを現役エンジニアが解説【初心者向け】

初心者向けにPythonできれいなコードを書くコツについて現役エンジニアが解説しています。コードをきれいに書くには可読性や一貫性が重要です。改行やスペースを使い、1行あたりの長さは推奨されている79文字以内にしましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

Pythonできれいなコードを書くコツについて、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して、初心者向けに解説します。

 

Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まるでしょう。

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonできれいなコードを書くコツについて詳しく説明していくね!

大石ゆかり

お願いします!

 

コーディング規約とは

コーディング規約とは、プログラムがどのように作られるのかを規定したものです。

そのうえで、Pythonはそのまま書いてもとても読みやすい言語の1つです。

条件式などはカッコを使わずインデントで単位を区切るので、処理が誰が書いても明確に分類できるように設計されています。

更に規約を守って書けば、誰が見ても読みやすいコードだといえるでしょう。

 

初心者がまず始めに意識すべきポイント

実際、コードは書くより読まれる事の方が多いことを意識してみましょう。

そのため、読みやすいコードを書くように努める必要があります。

  • 可読性が重要 (python の一番の指針かもしれません)
  • 可読性を保つためには「一貫性」を保つ事が重要です。

また、以下の点を意識して書くと読みやすいコードとなるでしょう。

①改行

1レベルインデントする毎にスペースは4個入れましょう。

hoge = nagai_kansuu_namae(v1, v2,
    v3, v4)
# 引数の区別のためスペースを4つ加える
def nagai_kansuu_namae(
    v1, v2, v3,
    v4):
        print(v1)
# 突き出しになった改行はインデントのレベルを一段深くする
huga = nagai_func_namae(
      v1, v2,
      v3, v4)

 

②タブを使うべきか、スペースを使うべきか。

スペースを使いましょう。

また、タブとスペースは混ぜてはなりません。

③1行あたりの長さ

79文字以内が強く推奨されます。

エディタでは、80文字表示の横幅で使用しましょう。

 

[PR] Pythonで挫折しない学習方法を動画で公開中

きれいなコードを書くのに役立つツール

幾つかコードチェックコードはあるものの、今回はpycodestyleモジュールを解説します。

このモジュールを使用するには、下記の通りに記述してインストールしましょう。

pip install pycodestyle

 

使い方は、下記のように記述し対象のソース・ファイルを引数で指定して実行して下さい。

$  pycodestyle hoge.py

 

まとめ

コードは第三者に読まれるもの、ということを前提に記述するのは、コードの品質を保つためには重要な指針です。

品質の良いコードは沢山の人に読まれ、編集され、長い時間使われることでしょう。

そのため、せっかく高機能なコードであったとしても規約を守らず、誰にも読まれないのは勿体無いといえます。

シンプルな規約を守るだけで、可読性、保守性は格段に向上するといえるでしょう。

 

執筆してくれたメンター

坂下雄一(さかしたゆういち)

外資系のEDAベンダで、エンジニアとして働いた後、東南アジアにて起業しました。

PythonはEDAのコマンド自動化、テスト環境構築の時に初めて使用し、素晴らしいと思い、今に至ります。

EDAの環境構築、手順の自動化は、tcl/tkというコマンド言語がメインですが、Pythonで置き換える作業も最近は盛んになってきています。

 

大石ゆかり

Pythonできれいなコードを書くコツがよく分かったので良かったです!

田島悠介

ゆかりちゃん、これからも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、Pythonを使った人工知能(AI)や機械学習の基礎を習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、参加してみてください。