iT邦幫忙

2021 iThome 鐵人賽

DAY 22
1

前言

在學習程式語言的過程中,應該都有聽過物件導向程式設計(Object-oriented programming,縮寫:OOP),在 Python 也有相似的用法。它是使用物件(Object)的概念去開發,能夠提高軟體的擴充性、維護性、跟重複使用率,在 Python 中要使用物件導向就需要熟悉關於類別(Class)及物件(Object)的相關知識。

正文開始

相關的知識包含了五種,如下

  1. 類別(Class)
  2. 物件(Object)
  3. 屬性(Attribute)
  4. 建構式(Constructor)
  5. 方法(Method)

在開始之前,先來看看程式碼吧!

# 人類類別
class human:
    # 建構式
    def __init__(self, name, height):
        self.name = name    # 名字屬性
        self.height = height    # 身高屬性
    # 方法 Method
    def say_hi(self):
        print("Hello, I am", self.name, "and", self.height, "tall.")

# 物件
Taiwanese = human()

接下來會分別介紹各個部分。

1. 類別(Class)

可以想像是物件(Object)的組成條件,用來定義這個物件的屬性 Attribute 及方法 Method,像是一個台灣人它有名字還有身高(屬性 Attribute),並且他會可能會跟人打招呼(方法Method)。定義類別(Class)的語法如下

class classname:

    statement

類別名稱習慣使用 Pascal 命名法。
每個單字字首大寫,不得使用空白或底線分隔單字

2. 物件(Object)

透過類別 Class 實際建立出來的東西,像是一個台灣人(Taiwanese)。建立物件的語法如下

object_name = classname()

範例

Taiwanese = human()

isinstace():用來判斷類別 Class 與物件 Object 的關係

# 人類類別
class human:
    pass
# 動物類別
class animal:
    pass
    
# 建立 human 類別的物件
Taiwanese = human()

print(isinstance(Taiwanese, human))   # True
print(isinstance(Taiwanese, animal))   # False

剩下的部份我們明天再來繼續介紹!

待續...


上一篇
【Day 21】Lambda 函式
下一篇
【Day 23】Class 類別(續)
系列文
宇宙 69 大魔王的 python 世界30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言