Python 3 基礎からDeep Learning まで

Python 3の勉強を始めました! 気になる箇所,つまづいて復習しなおしたところなどまとめていきます! 質問・ご意見等,大歓迎です!

Python 3:クラスとインスタンス(オブジェクト) (超基礎)

クラスとは?

  • クラス:オブジェクトを作るための設計図
  • クラスではオブジェクトの「属性」と「実行できること」を定義する
    • 属性は変数で,実行できることは関数(メソッド)で定義する
  • 以下,クラス定義の構文
class クラス名:
    ステートメント

銃(Gun)を例として,Gunクラスのオブジェクト仕様を定義してみる

  • Gunクラスのオブジェクトには,次に示す変数と関数を仮定する
    • 変数
      • color:銃の色(初期値"black")
      • number:装弾数(初期値 0)
    • 関数
      • shoot:引数で指定した数だけ弾を打つ

  • 初期化メソッド
    • クラス定義にはインスタンス(クラスから作ったオブジェクト)が作られたときに実行される初期化メソッドを書くことができる
def __init__(self, 引数1, 引数2, ...):
    初期化の処理
  • 注意
    • 第1引数であるselfには初期値が設定されていないので省略不可
    • selfにはインスタンス自身の参照が入っている

  • Gunクラスをつくる
class Gun: #Gunクラス
    def __int__(self, color="black") #初期化メソッド
        self.color = color #引数で受け取った値を代入 
        self.number = 0 #装弾数 0 から始める
  • この後,from ex2-3 import Gunとやって,gun1 = Gun()とすれば良い
要望有ればもう少し詳しくまとめます.