python 學習第十五天(繼承)

2021-08-21 23:52:54 字數 2034 閱讀 1168

python中繼承分為單繼承和多繼承

class

parent1:

#如果沒有繼承,python3中會預設繼承object這個類

pass

class

parent2:

pass

class

son1

(parent1):

#單繼承,父類是parent1

pass

class

son2

(parent1,parent2):

#多繼承,父類是parent1和parent2

pass

class

parent1:

a=12

pass

class

parent2:

pass

class

son1

(parent1):

a=13

pass

class

son2

(parent1,parent2):

pass

print(parent1.a,son1.a,son2.a)

#12 13 12 方法也是類似的

class

d: pass

class

c(d):

pass

class

f(d):

pass

class

b(c):

pass

class

e(f):

pass

class

g(d):

pass

class

a(b,e,g):

pass

print(a.mro()) #這個是方法解析順序列表

#[, , , , , , , ]

class

parent:

def__init__

(self,name,age):

self.name=name

self.age=age

class

son(parent):

def__init__

(self,name,age,***):

super().__init__(name,age)

self.***=***

s=son('k',12,'man')

print(s.__dict__) #

#__dict__是屬性字典

import abc

class

animal

(metaclass=abc.abcmeta):

#animal 就是個介面

@abc.abstractmethod

defcry

(self):

pass

@abc.abstractmethod

defeat

(self):

pass

class

dog(animal):

#dog 這個類實現了animal這個介面

def__init__

(self,name):

self.name=name

defcry(self):

print('汪汪汪')

defeat(self,food):

print('%s正在吃%s'%(self.name,food))

class

cat(animal):

def__init__

(self, name):

self.name = name

defcry(self):

print('喵喵喵')

d=dog('蛋黃')

c=cat('毛毛') # 由於cat這個類沒有實現animal介面中的eat方法,所以在例項化時會報錯

python第十五天

什麼是模組?一系列功能的集合 定義模組?建立乙個py檔案就是乙個模組,該py檔名就是模組名 怎麼使用模組?在要是用的模組檔案中通過import 模組名 來匯入模組 模組的四種方式?1 編譯執行模組所對應的py檔案,形成對應的pyc檔案 2 產生該模組自己的全域性命名空間 3 在適應該模組的全域性命名...

python爬蟲學習第十五天

from urllib.request import urlopen from bs4 import beautifulsoup import re import datetime import random def randomurl articleurl url articleurl html ...

PYTHON小白 第十五天

python小白 第十五天 1 再論類命名空間 python的類就像命名空間。python程式預設處於全域性命名空間內,類體則處於類命名空間內,python允許在全域性範圍內放置可執行 當python執行該程式時,這些 就會獲得執行的機會 類似地,python同樣允許在類範圍內放置可執行 當pyth...