---
# System prepended metadata

title: 19.物件導向-基本物件定義的方法
tags: [' 筆記', Python 進階語法與應用]

---

---
title: 19.物件導向-基本物件定義的方法

tags: Python 進階語法與應用, 筆記
---
## 19.物件導向-基本物件定義的方法

自定義功能：
1.參數 （傳入資料）（這邊的定義參數就是取暫時的名字）
2.回傳值（回傳答案）（return 資料）



def 功能名字(暫時名字1, 暫時名字2)：
TAB return 資料


---

鴨子類別 Duck type
重複事情 ->流程（功能）
重複資料->物件導向

複雜資料 用字典
{"name":"Elwing","height":175} ->人
若多人時 可以用更有結構化->物件導向

物件：複雜資料
導向：如何結構化 快速創造資料

excel:



| 姓名 | 身高| 體重 |
| -------- | -------- | -------- |
| Bob  | 175   | 76    |

step1:創造設計圖
1.1欄位（還不填值）
1.2 技能（專屬）

step2:設計圖->資料
2.1填值
2.2 使用技能

----
```
def bmi(height,weight):
    return weight/(height/100)**2
#class設計圖 首字大寫為了跟功能做分別 
class Person:
    name=None
    height=None
    weight=None
    def return_bmi(self):
        return self.weight/(self.height/100)**2

p1=Person()
p1.name="Elwing"
p1.height=175
p1.weight=75
print(p1.name,p1.return_bmi())

p2=Person()
p2.name="Bob"
p2.height=190
p2.weight=90
print(p2.name,p2.return_bmi())


```




