1. 程式人生 > >Python 關聯關係

Python 關聯關係

class Boy:

    def __init__(self, name,  girlFriend=None):
        # 在初始化的時候可以給一個物件的屬性設定成另一個類的物件
        self.girlFriend = girlFriend  # 一個男孩有一個女朋友

    def chi(self):
        if self.girlFriend:
            print(f"帶著他的女朋友{self.girlFriend.name}去吃飯")
        else:
            print("單身狗, 吃什麼吃? 滾去學習.")

    def movie(self):
        if self.girlFriend:
            print(f"帶著他的女朋友{self.girlFriend.name}去看電影")
        else:
            print("單身狗, 看什麼看? 滾去學習.")


class Girl:
    def __init__(self, name):
        self.name = name

b = Boy("寶浪")
g = Girl("孫藝珍")
b.chi()

# alex給包浪介紹了一個女朋. 孫藝珍
b.girlFriend = g
b.chi()

g2 = Girl("梁詠琪")
b.girlFriend = g2 # 換了個女朋友
b.chi()


class School:

    def __init__(self, name):
        self.teach_list = [] # 這裡要裝多個老師
        self.name = name

    def zhaopin(self, teach):
        self.teach_list.append(teach)

    def shangke(self):
        for t in self.teach_list:
            t.work()

class Teacher:
    def __init__(self, name):
        self.name = name
    def work(self):
        print(f"{self.name}在上課")

lnh = School("老男孩")
t1 = Teacher("武sir")
t2 = Teacher("太白")
t3 = Teacher("哪吒")
t4 = Teacher("女神")
t5 = Teacher("日天")
t6 = Teacher("寶浪")


lnh.zhaopin(t2)
lnh.zhaopin(t3)
lnh.zhaopin(t4)
lnh.zhaopin(t5)
lnh.zhaopin(t6)

lnh.shangke()