クラス
演習問題(アドレス帳の作成)
class Person:
def _ _init_ _(self, last_name, first_name, tel, mail_address):
self.last_name = last_name
self.first_name = first_name
self.tel = tel
self.mail_address = mail_address# ここを修正
※initで初期化をして、関数の中で引数にしているものを定義していく。第一引数にselfを書くこと、第2引数から自由に使いたい変数を使うことができる。
※メソッド内では左辺にselfを頭につけることを忘れない
class AddressBook:
def _ _init_ _(self):
self.person_list = []
※リストの作成の仕方は変数名 = [] で新規リストを作成している。リスト名にselfをつけることを忘れないように
adrbk = AddressBook()
person1 = Person('田中', '一郎', '03-1111-2222', 'ichiro@pyq.jp')
上記でオブジェクトとインスタンスを作成した
演習② (他クラスのメソッドを使う方法)
class Person:
def __init__(self, last_name, first_name, tel, mail_address):
self.last_name = last_name # 姓
self.first_name = first_name # 名前
self.tel = tel # 電話番号
self.mail_address = mail_address # メアド
def full_name(self):
"""フルネーム(姓+空白1文字+名前)を返す"""
return self.last_name + " " + self.first_name
※selfをつけて変数を使えるのはメソッド内だけだと思っていたが、クラス内であれば他のメソッドの変数をselfをつけることで使える
adrbk = AddressBook()
person1 = Person('田中', '一郎', '03-1111-2222', 'ichiro@pyq.jp')
print(person1.full_name() == '田中 一郎') ※==の書き方で判定することができる