見出し画像

Python奮闘記録②よいコードの書き方がわからん

※へっぽこPython初心者の、自分に向けた整理用ログです。

たすけてChatGPTせんせーい!((っ´;ω;)っ

自分で読みなさいよ…

※以下、ChatGPT先生による有難いまとめになります。m(_ _)m


Python コーディングスタイル(PEP8)まとめ

Pythonの標準コーディングスタイル「PEP8」は、コードの可読性と一貫性を高めるためのガイドラインです。以下に初学者が特に意識すると良い主要なポイントをまとめました。


1. インデント

  • スペースの使用:インデントにはスペース4つを使用する。

  • 行継続時のインデント:長い行を複数行に分ける際は、開き括弧の直後や引数リストの開始位置に合わせる。

# 正しい例
result = some_function(
    var_one, var_two,
    var_three, var_four
)

2. 行の長さ

  • 1行は最大79文字まで(コメントやdocstringは72文字以内が推奨)。

  • 長いコードは改行して可読性を保つ


3. 空白の使い方

  • 演算子の前後: + , - , * , = などの前後にスペース1つを入れる。

# 正しい例
x = y + z
  • カンマやコロンの後: ,  :  ;  の後にはスペースを入れる。

# 正しい例
if x == 4: print(x, y); x, y = y, x
  • 関数呼び出しの括弧:関数名と括弧の間にはスペースを入れない。

# 正しい例
print(x)

4. 空行のルール

  • 関数やクラスの間:トップレベルの関数やクラスの定義の間には2つの空行を入れる。

  • クラス内のメソッド間:クラス内のメソッド定義の間には1つの空行を入れる。

# 正しい例
def my_function():
    pass


class MyClass:
    def method_one(self):
        pass

    def method_two(self):
        pass

5. コメントの書き方

  • 行コメント:コードの行末にコメントを入れるときは、コードとコメントの間に2つのスペースを入れる。

x = x + 1  # xに1を加える
  • ブロックコメント:複数行にわたるコメントはコードの上に配置し、各行を#で始める。

# この関数はユーザーの年齢を計算する
# 入力は生年月日(YYYY-MM-DD)
def calculate_age(birth_date):
    pass

6. 命名規則

  • 変数名・関数名:小文字+アンダースコア(スネークケース)

my_variable = 10

def my_function():
    pass
  • クラス名:各単語の頭文字を大文字にする(キャメルケース)

class MyClass:
    pass

7. インポート文

  • 順序: インポートは次の順番で書く

    1. 標準ライブラリ

    2. サードパーティライブラリ

    3. 自作モジュール(ローカルのimport)

# 正しい例
import os
import sys

import numpy as np
import pandas as pd

import my_module
  • 1行1モジュール:import os, sys のように1行に複数のモジュールをインポートしない。

# 正しい例
import os
import sys

8. ドキュメンテーション文字列(Docstring)

  • 関数・クラス・モジュールの説明は docstring を使う

  • """(トリプルクォート)を用いる

def example_function():
    """
    この関数の目的をここに記述します。
    """
    pass

まとめ

これらのルールを守ることで、PEP8に準拠した読みやすく、保守しやすいコードを書くことができます。

詳細は公式ドキュメント(PEP 8 日本語訳)を参照してください。


うおぉ!ありがとうChatGPTせんせい!(人´∀`)

ちなみにPEP8はペップ・エイトって読むらしい。

(…たぶんまた続く)

いいなと思ったら応援しよう!