Pythonでコーディングする時の約束。

X
     この記事はプロモーションを含みます
Content

Pythonを使う際に注意しなければならないポイント

chatGPTの Advanced Data Analysis(Code Interepreter)はpromptの要求に対しPythonソースを出力してそれを実行して目的を達成しようとします。

やはり基本的なPythonの知識は持っておくべきと考えPython用の忘備録を作ることにしました。

Pythonのソースのインデントについて

  • Pythonはインデント(通常はスペース4つまたはタブ4)が構文の一部であるため、正確なインデントが必要です。

vscodeなどのプログラミングに特化したエディターを使用するとインデントの関係が見やすかったりします。

むしろ使わないとあらぬ構文エラーを起こしそうです。

Cなどの他言語経験者の場合(私)このインデントで一括りが異様な感じがしますがまぁこれは慣れなんでしょうな。{ } 使いたくなります笑

Pythonの関数の宣言はdef

上記のコードみていただくとわかりますが def で始まる部分が関数ですね。

def hogehoge(input):

最後の : (コロン)が独特な感じするけどこれとインデントで一括りに考えるのだな・・。

Pythonを使う際に注意しなければならないその他のポイント

スクロールできます
カテゴリ説明
インデントPythonはインデント(通常はスペース4つまたはタブ4)が構文の一部であり、正確なインデントが必要です。
命名規則Pythonの命名規則(PEP8)に従い、変数名や関数名を選ぶことが推奨されます。
バージョン管理Python 2とPython 3は互換性がありません。使用するバージョンに注意が必要です。
ライブラリとパッケージ使用する外部ライブラリやパッケージがPythonのどのバージョンに対応しているかを確認すること。
エラーハンドリング適切なエラーハンドリング(tryexceptブロックなど)を行うこと。
コメントとドキュメンテーションコードに適切なコメントを追加し、必要な場合はドキュメンテーションを作成すること。
リソース管理ファイルやネットワーク接続などのリソースを使用する際は、適切にクローズすること。
テスト単体テストや統合テストを行い、コードが正確に動作することを確認すること。
コードの可読性コードは他の人(または未来の自分)が理解しやすいように書くこと。
グローバル変数の使用グローバル変数は極力避け、必要な場合は注意深く使用すること。

Pythonを使用する際に考慮すべき主要なポイントを網羅しています。これに従うことで、より効率的かつ安全なコード開発が可能です。

Pythonコードで実際のいくつかの注意点を示す簡単なサンプル

# インポート部分: 必要なモジュールをインポート
import math

def calculate_area(radius):
    """
    円の面積を計算する関数
    :param radius: 円の半径
    :return: 円の面積
    """
    # 数学的な計算: 円の面積 = π * 半径^2
    return math.pi * math.pow(radius, 2)

# エントリーポイント: プログラムの実行が始まる場所
if __name__ == "__main__":
    try:
        # ユーザー入力: 半径を入力してもらう
        r = float(input("円の半径を入力してください: "))

        # 面積計算: calculate_area関数を呼び出して面積を計算
        area = calculate_area(r)

        # 結果出力: 計算された面積を出力
        print(f"円の面積は {area} です。")

    except ValueError:
        # エラーハンドリング: 不正な入力があった場合の処理
        print("無効な入力です。数値を入力してください。")

このサンプルコードはPEP8に準拠しており、各行にコメントも付けています。注意点に関連する部分は特にコメントで明示しています。

Pythonの命名規則に従い、変数名や関数名を選ぶこと PEP8について

Pythonの命名規則はPEP 8(Python Enhancement Proposal 8)によって定められています。以下はその主なポイントです。

スクロールできます
カテゴリ命名スタイル説明
変数名小文字 + アンダースコアuser_name, total_amount可読性の高い名前を選びます。
定数大文字 + アンダースコアMAX_SIZE, PI_VALUE定数は大文字とアンダースコアを使用します。
関数名小文字 + アンダースコアcalculate_area(), get_user_info()関数名も小文字とアンダースコアを使用します。
クラス名キャメルケースMyClass, UserInfoクラス名は「CapWords」(キャメルケース)を使用します。
メソッド名小文字 + アンダースコアmy_method()メソッド名は小文字とアンダースコアを使用します。
インスタンス変数小文字 + アンダースコア(非公開の場合は先頭に__private_var非公開のインスタンス変数は、先頭にアンダースコアを一つつけます。
モジュール名小文字os, sysモジュール名は短く、小文字を使用します。アンダースコアは避けることが推奨されています。
パッケージ名小文字requests, numpyパッケージ名も短く、小文字を使用します。
引数名小文字 + アンダースコアarg_one, arg_two引数名は関数名と同様に、小文字とアンダースコアを使用します。
グローバル変数小文字 + アンダースコアglobal_varグローバル変数は避けるべきですが、使用する場合は小文字とアンダースコアを使用します。

このテーブルは、Pythonの命名規則に関する主要なポイントを網羅しています。これに従うことで、コードの可読性とメンテナンス性が向上します。

  • URLをコピーしました!

この記事を書いた人

makotoのアバター makoto Blogger&YouTuber

サーバー管理者として17年ほど仕事でサーバー触ってました。
www,mail,dns,sql各鯖をすべてFreeBSDで運用してましたが現世ではかなりレアなタイプになるみたいですね笑

viやシェルスクリプトとかperlとかgccとかFreeBSDとか実はbashよりtcshが好きとか時々寝ぼけるのは
その名残でしょう。

今まで縁の下の力持ち的な他人のためにプログラムを書き他人のためにサーバー構築し他人のためにWEBサイトを創る的な世界から
自分の好きなことに集中できる環境は実に気持ち良いですね。
現役は引退済みなので難しいことはやりませんしやれません。

現在 ほぼ自由人。

Content