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 の基礎

クラス

Python 言語はオブジェクト指向言語のひとつです.Python では数値や関数などすべてをオブジェクトとして扱います.整数型のオブジェクトやリストのオブジェクトなど様々なものが利用できます.独自のオブジェクト(カスタムオブジェクト)を作成することもできます.このカスタムオブジェクトでは属性(変数)とメソッド(関数)を定義してひとまとめで管理することができるようになります.

クラスの定義とインスタンス化

カスタムオブジェクトを作成するためには class キーワードを使ってクラスを定義します.このセクションでは,何らかの(システム開発などの)プロジェクトでの問題点 (issue) を管理する Issue クラスを作成します. 最も単純なクラスの定義は次のようになります.なお,pass は何も処理をしない時に必要な命令です.

class Issue:
    #何らかの処理
    pass

今定義した Issue クラスのインスタンス化を行い,属性に値を代入します.なお,インスタンス化とは Issue クラスの新しいインスタンスを生成することをいいます. issue1 という Issue クラスのインスタンスに,問題の件名を意味する subject 属性,問題の詳細を意味する description 属性,問題の重要度を意味する priority 属性,問題が解決したかどうかを意味する closed 属性を作成して値を代入してみます.このとき,クラスの属性にアクセスするためには . を使います.

class Issue:
    pass

# インスタンス化
issue1 = Issue()
# 属性を作成して値を代入する
issue1.subject = '件名です'
issue1.description = '問題の詳細です'
issue1.priority = 1
issue1.closed = False
# 属性をそれぞれ表示する
print('subject :', issue1.subject)
print('description :', issue1.description)
print('priority :',issue1.priority)
print('closed :', issue1.closed)
subject : 件名です
description : 問題の詳細です
priority : 1
closed : False

目次に戻る