Python入門トップページ


目次

  1. プログラミング言語
  2. Anaconda - Jupyter Notebook / JupyterLab の環境設定
  3. Python の基礎
  4. リスト,タプル,辞書,集合
  5. 再び Jupyter Notebook の操作
  6. Python の制御構文
  7. 関数
  8. 便利な関数など
  9. リストの内包表記
  10. 多次元リスト
  11. クラス
    1. クラスの定義とインスタンス化
    2. クラスの初期化
    3. 属性の変更
    4. メソッドの定義(ゲットメソッド)
    5. メソッドの定義(セットメソッド)
    6. メインモジュール
    7. クラスのインポート
    8. クラスの属性を取り出す
    9. クラスの属性値を取り出す
    10. クラスの属性と値を辞書形式で得る
    11. クラスの属性を削除する
    12. モジュールのサーチパス
    13. 様々なインポート方法
  12. 演習問題
  13. 雑多な情報

Python の基礎

クラス

メインモジュール

これまで,最初に実行されるプログラムはインデントがない状態で入力していました.もちろんこのままでも良いのですが,ここで定義した Issue クラスを別のプログラムで再利用するようなこともあります. if __name__=='__main__' を使ってプログラム自体をモジュール化すると,モジュール自体を実行することができ,さらに別のプログラムから呼び出すこともできるようになります.

次のプログラムを実行すると, if の中がまず実行されるので,すなわち main() 関数が呼び出されることになります.

class Issue:
    def __init__(self, subject):
        self.subject = subject
        self.description = ''
        self.priority = 0
        self.closed = False

    def is_closed(self):
        return self.closed

    def close(self):
        self.closed = True

def main():
    issue1 = Issue('件名です')
    issue1.description = '問題の詳細です'
    issue1.priority = 1
    issue1.close()

    print('subject :', issue1.subject)
    print('description :', issue1.description)
    print('priority :',issue1.priority)
    print('closed :', issue1.is_closed())

if __name__ == '__main__':
    main()
subject : 件名です
description : 問題の詳細です
priority : 1
closed : True

目次に戻る