希望所有溫柔又可愛的人最後都能幸福❤
今日總結:
**量200行
部落格量一篇
所學時間
4小時左右
了解到的知識點
python物件導向基礎
明日計畫:
早上python物件導向封裝
下午python物件導向封裝晚上無
具體內容:
物件導向(opp)
過程和函式
面向過程的特點
注重步驟與過程,不注重職責分工
如果需求複雜,**會變得很複雜
開發複雜專案,沒有固定的套路,開發難度很大!
物件導向的特點
相比較函式,物件導向是更大的封裝,根據職責在乙個物件中封裝多個方法注重物件和職責,不同的物件承擔不同的職責
更加適合應對複雜的需求變化,是專門應對複雜專案開發,提供的固定套路
需要在物件導向基礎上,再學習一些物件導向的語法
類和物件
類就相當於製造飛機時的圖紙,是乙個模板,是負責建立物件的
物件
物件就相當於用圖紙製造的飛機
在程式開發中,應該先有類,再有物件
在程式開發中,要設計乙個類,通常需要滿足以下三個要素:
類名這類事物的名字,滿足大駝峰命名法
屬性這類事物具有什麼樣的特徵
方法這類事物具有什麼樣的行為
需求中沒有涉及的屬性或者方法在設計類時,不需要考慮物件導向語法基礎
在python
中物件無處不在,我們之前學的變數、資料、函式都是物件
使用內建函式dir
傳入識別符號/資料,可以檢視物件內的所有屬性及方法
定義乙個貓類cat
定義兩個方法eat
和drink
按照需求--不需要定義屬性
class cat:
def eat(self):
print("小貓愛吃魚")
def drink(self):
print("小貓愛喝水")
tom = cat()
tom.drink()
tom.eat()
print(tom)
addr = id(tom)
print("%x" % addr)
引用
在物件導向開發中,引用的概念是同樣適用的!在
python
中使用類建立物件之後,tom
變數中仍然記錄的是物件在記憶體中的位址
在計算機中通常使用16進製制表示記憶體位址使用同乙個類建立出來的物件並不是同乙個物件
class cat:
def eat(self):
print("小貓愛吃魚")
def drink(self):
print("小貓愛喝水")
tom = cat()
tom.drink()
tom.eat()
lazy_cat = cat()
lazy_cat.eat()
lazy_cat.drink()
lazy_cat2 = lazy_cat
print(tom)
print(lazy_cat)
print(lazy_cat2)
方法種的self
引數
在日常開發中,不推薦在類的外部給物件增加屬性
物件應該包含哪些屬性,應該封裝在類的內部
初始化方法:_init_
,_init_
是物件的內建方法
使用類名建立物件時,會自動執行以下操作:
class cat:
def __init__(self):
print("這是乙個初始化方法")
tom = cat()
初始化方法改造:
class cat:
def __init__(self, new_name):
# print("這是乙個初始化方法")
# self.name = "tom"
self.name = new_name
def eat(self):
print("%s 愛吃魚" % self.name)
tom = cat("tom")
print(tom.name)
lazy_cat = cat("大懶貓")
lazy_cat.eat()
內建方法和屬性
1._del_
方法
class cat:
def __init__(self, new_name):
self.name = new_name
print("%s 來了" % self.name)
def __del__(self):
print("%s 去了" % self.name)
# tom是全域性變數
tom = cat("tom")
print(tom.name)
# del關鍵字可以刪除乙個物件
del tom
print("-" * 50)
乙個物件的_del_
方法一旦被呼叫,生命週期結束 寒假自學 十
希望所有溫柔又可愛的人最後都能幸福 今日總結 量400行 部落格量一篇 所學時間 6小時左右 了解到的知識點 python爬蟲例項 acwing每日一題 明日計畫 早上python爬取疫情資訊 下午python爬取疫情資訊 晚上acwing每日一題 具體內容 獲取丁香園疫情資料 匯入模組 impor...
寒假自學 八
希望所有溫柔又可愛的人最後都能幸福 今日總結 量400行 部落格量一篇 所學時間 6小時左右 了解到的知識點 python模組 丟擲異常 acwing每日一題 明後天休息,13號計畫 早上python爬蟲 下午python爬蟲 晚上acwing每日一題 具體內容 異常try num int inpu...
寒假自學Python總結
這個寒假除了我媽苦口婆心的讓我考了科目二之外,我還做了一件大事就是自學了一丟丟的python。摸著良心講,從不知道哪天心血來潮開始到現在,大概15天吧。其中最大的幫助就是張大佬帶我走了一波toj的python刷題,我們自己開了2個小競賽,我做了好久 捂臉.大概是字好看的緣故 比較喜歡手寫學習.嗯我知...