python 20200317封裝 繼承 多型

2021-10-04 13:56:50 字數 1485 閱讀 6263

展開python 中的 self 相當於c++ 中的this指標。。。

——  _init_(self)  init方法 構建方法,當你在初始化乙個物件時 這個方法就會在物件被建立時 自動呼叫

class ball:

def  __init__(self,name):   # attention ' __ '

self.name = name

def kick(self):

print("我叫%s,該死的,誰在踢我。。。"% self.name)

>>> b = ball('kk')

>>> b.kick

python 中的私有變數 和 共有變數

>>> class person:

__name = "到付"  #私有變數 無法通過 >>> p = person() p.name 或 p.__name() 訪問獲得 可在私有變數下方定義後通過a.getname() 訪問

def getname(self):   # 或者 p._person__name 的方式訪問

return self.__name

>>> p = person()

>>> p.getname()

'\xb5\xbd\xb8\xb6'

或者p._person__name 來訪問

38---- 繼承

>>> class parent:

def hello(self):

print('zhegnzai diaoyong fulie d fangfa')

>>> class child(parent):    # 子類繼承父類

pass

>>> p = parent()

>>> p.hello()

zhegnzai diaoyong fulie d fangfa

>>> c = child()

>>> c.hello()               #  並繼承父類的方法  

zhegnzai diaoyong fulie d fangfa

class child(parent):               # 子類重新定義

def hello(self):

print("zhegnzai diaoyng zilei d fangfa ")

>>> c = child()

>>> c.hello()

zhegnzai diaoyng zilei d fangfa    # 呼叫子類的方法 覆蓋父類的方法

>>> p.hello()

zhegnzai diaoyong fulie d fangfa   # 繼續呼叫父類自己的方法

多型:class base1:

def foo1(self):

print("我是fool,為base1 代言")

class base2:

def foo2(self):

print("我是foo2,為base2 代言")

python反爬之封IP

requests是第三方庫,需要安裝 pip install requests import requests 在日常的爬蟲中,封ip也是乙個很常用的反爬蟲手段,遇到這種情況,我們只需要在每次請求的時候為每個請求指定乙個ip位址即可 url 這裡指定ip,當然這只是個示範,獲取 ip有這幾個途徑 付...

python封裝的方法 Python類和封裝方法

我是oop新手,這是我建立python類的第一次嘗試。我試圖使我的3個變數私有化,以便只有方法更新資訊 強制封裝 似乎如果我從類中刪除setters和getters方法,它對我的 沒有影響 一定是初始化器方法在做這項工作嗎?我能做些什麼來改善這一點?謝謝。在 編輯 我已經更新了我的 並刪除了初始化。...

Python類學習(五) 封裝

封裝 將物件的狀態資訊隱藏在物件內部,不允許外部程式直接訪問物件內部資訊,而是通過該類提供的方法實現對內部資訊的操作和訪問 作用 讓使用者只能通過事先預定的方法訪問例項引數,從而可以在該方法中加入控制邏輯,限制對屬性的不合理訪問 隱藏類的實現細節 python並沒有提供類似於其他語言的private...