小白學Python的第十五堂課

更新於 發佈於 閱讀時間約 3 分鐘

在第十五課中,我們將探索 Python 的基礎物件導向程式設計 (OOP) 概念。

物件導向程式設計是一種設計和組織程式碼的方法,它強調使用物件來表示資料和功能。

請新建一個檔案 oop_basics.py

  1. 類和物件:
  • 類 (Class): 定義一個新的資料型態,它有自己的屬性和方法。
  • 物件 (Object): 是類的一個實例。
pythonCopy code
# 定義一個類
class Dog:
def __init__(self, name, age):
self.name = name
self.age = age

def bark(self):
print(f"{self.name} barks!")

# 建立一個物件
buddy = Dog("Buddy", 3)
buddy.bark()
  1. 繼承 (Inheritance): 繼承允許一個類從另一個類中獲得其屬性和方法。
pythonCopy code
class GoldenRetriever(Dog):
def fetch(self, item):
print(f"{self.name} fetched {item}!")

rex = GoldenRetriever("Rex", 5)
rex.bark()
rex.fetch("ball")
  1. 封裝 (Encapsulation): 封裝是 OOP 的一個主要特點,它確保物件的內部狀態不被外部直接訪問。
pythonCopy code
class Cat:
def __init__(self, name):
self._name = name # _name 是私有屬性

def meow(self):
print(f"{self._name} says meow!")

whiskers = Cat("Whiskers")
whiskers.meow()
# print(whiskers._name) # 通常不建議直接訪問私有屬性
  1. 多型 (Polymorphism): 多型允許不同的類可以被用作同一個介面,或者說,不同的物件可以以相同的方式使用。
pythonCopy code
class Fish:
def __init__(self, name):
self.name = name

def speak(self):
print(f"{self.name} blubs!")

def animal_speak(animal):
animal.speak()

tom = Cat("Tom")
nemo = Fish("Nemo")

animal_speak(tom) # 輸出: Tom says meow!
animal_speak(nemo) # 輸出: Nemo blubs!

以上只是 OOP 在 Python 中的基礎。隨著你繼續深入學習,你將發現更多進階的主題和技巧。

請在 oop_basics.py 中輸入並運行上述代碼,嘗試創建自己的類和物件,並進行繼承和多型的實驗。

留言
avatar-img
留言分享你的想法!
avatar-img
Hack_Z的沙龍
35會員
28內容數
我學習Python的紀錄
Hack_Z的沙龍的其他內容
2023/09/04
在這一課中,我們將學習如何在Python中使用beautifulsoup4和requests模塊進行基本的網頁爬蟲。 首先,你需要安裝beautifulsoup4模塊,如果你還沒有安裝它的話:
Thumbnail
2023/09/04
在這一課中,我們將學習如何在Python中使用beautifulsoup4和requests模塊進行基本的網頁爬蟲。 首先,你需要安裝beautifulsoup4模塊,如果你還沒有安裝它的話:
Thumbnail
2023/09/01
在這一課中,我們將學習如何在Python中使用sqlite3模塊進行基本的資料庫操作。 創建資料庫和表 首先,我們需要創建一個資料庫和一個表。
Thumbnail
2023/09/01
在這一課中,我們將學習如何在Python中使用sqlite3模塊進行基本的資料庫操作。 創建資料庫和表 首先,我們需要創建一個資料庫和一個表。
Thumbnail
2023/08/31
在這一課中,我們將學習如何在Python中使用requests模塊發送HTTP請求。 發送GET請求requests.get() 函數用於發送GET請求。
Thumbnail
2023/08/31
在這一課中,我們將學習如何在Python中使用requests模塊發送HTTP請求。 發送GET請求requests.get() 函數用於發送GET請求。
Thumbnail
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
我的「媽」呀! 母親節即將到來,vocus 邀請你寫下屬於你的「媽」故事——不管是紀錄爆笑的日常,或是一直想對她表達的感謝,又或者,是你這輩子最想聽她說出的一句話。 也歡迎你曬出合照,分享照片背後的點點滴滴 ♥️ 透過創作,將這份情感表達出來吧!🥹
Thumbnail
我的「媽」呀! 母親節即將到來,vocus 邀請你寫下屬於你的「媽」故事——不管是紀錄爆笑的日常,或是一直想對她表達的感謝,又或者,是你這輩子最想聽她說出的一句話。 也歡迎你曬出合照,分享照片背後的點點滴滴 ♥️ 透過創作,將這份情感表達出來吧!🥹
Thumbnail
.發揮你的動物本能吧!你有能力釋放任何讓你感到不自在的能量 .動物是個完美的載體,反射出你所是 .所有的情緒都只是能量的一種表現形式,負能量同樣也只是能量而已 .尊重你所是,不試圖改變你
Thumbnail
.發揮你的動物本能吧!你有能力釋放任何讓你感到不自在的能量 .動物是個完美的載體,反射出你所是 .所有的情緒都只是能量的一種表現形式,負能量同樣也只是能量而已 .尊重你所是,不試圖改變你
Thumbnail
犬研室團體班以精緻小班的形式進行課程,專為第一次與狗狗生活、有些問題不曉得怎麼改善、希望與狗狗在生活上輕鬆快樂的家庭而設。每堂課後提供詳細課程紀錄,並由多年經驗老師帶領,讓每位同學擁有最好的上課體驗!
Thumbnail
犬研室團體班以精緻小班的形式進行課程,專為第一次與狗狗生活、有些問題不曉得怎麼改善、希望與狗狗在生活上輕鬆快樂的家庭而設。每堂課後提供詳細課程紀錄,並由多年經驗老師帶領,讓每位同學擁有最好的上課體驗!
Thumbnail
在第六課中,我們將討論 Python 中的類別 (Classes) 和物件 (Objects)。 類別和物件是物件導向程式設計 (Object-oriented programming, OOP) 的核心概念。在 Python 中,所有事物都是物件,並且它們都來自於某個類別。
Thumbnail
在第六課中,我們將討論 Python 中的類別 (Classes) 和物件 (Objects)。 類別和物件是物件導向程式設計 (Object-oriented programming, OOP) 的核心概念。在 Python 中,所有事物都是物件,並且它們都來自於某個類別。
Thumbnail
在第六課中,我們將討論 Python 中的類別 (Classes) 和物件 (Objects)。 類別和物件是物件導向程式設計 (Object-oriented programming, OOP) 的核心概念。在 Python 中,所有事物都是物件,並且它們都來自於某個類別。
Thumbnail
在第六課中,我們將討論 Python 中的類別 (Classes) 和物件 (Objects)。 類別和物件是物件導向程式設計 (Object-oriented programming, OOP) 的核心概念。在 Python 中,所有事物都是物件,並且它們都來自於某個類別。
Thumbnail
本書解析動物訓練師是如何引導動物做出他們想要的動作,並以此延伸出如何教育小孩,甚至可以引導自己,改變過去的行為模式。 你可以先進行了解的有兩種,一個為正向增強,一個為塑型法。 正向增強,讓你更想去做一件事 今天你要讓自己有閱讀習慣,可以在你開始做了閱讀後,給自己一個小獎勵,可能是打電動 30 分鐘,
Thumbnail
本書解析動物訓練師是如何引導動物做出他們想要的動作,並以此延伸出如何教育小孩,甚至可以引導自己,改變過去的行為模式。 你可以先進行了解的有兩種,一個為正向增強,一個為塑型法。 正向增強,讓你更想去做一件事 今天你要讓自己有閱讀習慣,可以在你開始做了閱讀後,給自己一個小獎勵,可能是打電動 30 分鐘,
Thumbnail
探索如何在 VS Code 中養一隻療癒的小寵物。本文將指導你安裝和使用 vscode-pets 擴充功能,讓可愛的寵物陪伴你一同寫程式。你可以選擇不同類型和顏色的寵物,甚至改變它們的遊玩場景,為你的編程時光增添樂趣和舒適。
Thumbnail
探索如何在 VS Code 中養一隻療癒的小寵物。本文將指導你安裝和使用 vscode-pets 擴充功能,讓可愛的寵物陪伴你一同寫程式。你可以選擇不同類型和顏色的寵物,甚至改變它們的遊玩場景,為你的編程時光增添樂趣和舒適。
Thumbnail
「繼承」顧名思義就是有一個或多個類別延續了某個類別的特性,就如同在人類社會裡,兒女接收了父母的財產、承襲了上代的技能、延續了前一輩的事業。在Python的語言裡,能夠繼承的特性為類別的屬性與方法,繼承的類別稱為子類別(child class / subclass)或衍伸類別(derived clas
Thumbnail
「繼承」顧名思義就是有一個或多個類別延續了某個類別的特性,就如同在人類社會裡,兒女接收了父母的財產、承襲了上代的技能、延續了前一輩的事業。在Python的語言裡,能夠繼承的特性為類別的屬性與方法,繼承的類別稱為子類別(child class / subclass)或衍伸類別(derived clas
Thumbnail
註:這篇雖是第一章第一回,但不是第一篇,前面有《可以像章回小說般閱讀的英文文法書 | 00 楔子及序章》 我們由下而上,由小而大,才好組出正確的句子,才能講、寫正確的英文。學校用選擇題讓你四個選一個正確的(還花了三倍的時間看了三個錯誤的) ,耗費你三倍的時間,也沒能讓你如願的說出正確的英文,不是嗎
Thumbnail
註:這篇雖是第一章第一回,但不是第一篇,前面有《可以像章回小說般閱讀的英文文法書 | 00 楔子及序章》 我們由下而上,由小而大,才好組出正確的句子,才能講、寫正確的英文。學校用選擇題讓你四個選一個正確的(還花了三倍的時間看了三個錯誤的) ,耗費你三倍的時間,也沒能讓你如願的說出正確的英文,不是嗎
Thumbnail
  牠,我們不懂他的語言,  牠,也在習慣我們在比手畫腳的意思,
Thumbnail
  牠,我們不懂他的語言,  牠,也在習慣我們在比手畫腳的意思,
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News