Python簡單示例 類與繼承

2021-10-11 14:30:45 字數 3449 閱讀 2084

建立員工類,員工有姓名和薪資屬性,定義類和建立例項物件呼叫方法

class

employee

: emp_count=

0 def __init__

(self,name,salary)

: self.name=name

self.salary=salary

employee.emp_count+=1

def display_count

(self)

:print

("員工總數%d"

%employee.emp_count)

def display_employee

(self)

:print

("姓名:"

,self.name,

",薪資:"

,self.salary)

#建立employee類的第乙個物件

emp1=

employee

("zero"

,2000

)#建立employee類的第二個物件

emp2=

employee

("manni"

,5000

)emp1.

display_employee()

emp2.

display_employee()

print

("員工總數: %d"

% employee.emp_count)

self代表類的例項,self在定義類的方法時是必須要有的,在呼叫時不必傳入相應的引數嗎,它是被系統自動傳入的。

例項化的物件通過__init__方法接收引數

2、繼承例項

class

person

: def __init__

(self,name,age,gender)

: self.name=name

self.age=age

self.gender=gender

class

student

(person)

: def show

(self)

:print

('姓名:'

,self.name,

'年齡:'

,self.age,

'性別:'

,self.gender)

# print("名字:",self.name)

# print("年齡:",self.age)

# print("性別:",self.gender)

lilei=

student

('李磊'

,'20'

,'男'

)lilei.

show()

hanmeimei=

student

('韓梅梅'

,'21'

,'女'

)hanmeimei.

show

()

執行結果:

姓名: 李磊 年齡: 20 性別: 男

姓名: 韓梅梅 年齡: 21 性別: 女

3、家庭familly類

class

familly()

: def __init__

(self,surname,num,age)

: self.surname=surname

self.num=num;

self.age=age

def get_surname

(self):if

isinstance

(self.surname,str)

:return self.surname

def get_num

(self):if

isinstance

(self.num,

int)

:return self.num

def get_age

(self)

: sum=

0for i in self.age:

sum=sum+i

ifisinstance

(sum,

int)

:return

round

(sum/

len(self.age)

)xiaok=

familly

('開',4

,[20,

24,45,

40])print

("姓氏:"

,xiaok.

get_surname()

)print

("人數:"

,xiaok.

get_num()

)print

("家庭平均年齡:"

,xiaok.

get_age()

)

4、使用@property給screen類加上width和height屬性,以及唯讀屬性resolution

class

screen

(object)

: @property

def width

(self)

:return self._width

@width.setter

def width

(self,value)

: self._width=value

@property

def height

(self)

:return self._height

@height.setter

def height

(self,value)

: self._height=value

@property

def resolution

(self)

:return self.width*self._height

#測試s=

screen()

s.width=

1024

s.height=

768print

('resolutin='

,s.resolution)

if s.resolution==

1024

*768

:print

('測試通過'

)else

:print

('測試失敗'

)

解析:分別定義screen類的width與height方法,每個方法中都有getter與setter方法,使用@property將方法變成屬性。

Python 物件導向 類與繼承簡單示例

python 是一門物件導向的設計語言,與此對應的就是面向過程程式設計與函式式程式設計 物件導向的乙個優點就是更好的增強 的重用性。面向過程程式設計可以簡單的理解為 重點在步驟,將乙個任務完成所需要的所有步驟羅列出來 物件導向則可以理解為 重點在物件,打個比方的話就是在人,完成一項任務需要哪些人,這...

C 類繼承示例

c 的子類與孫子類都實現了虛函式時,孫子類的實現會覆蓋掉子類的實現。繼承的最主要的應用就是把不同的類放到乙個陣列中,然後遍歷呼叫同名函式。例項如下 include include include using namespace std class parent virtual void printn...

Python類與繼承

2.1 類定義 class classname 1 2.2 類物件 類物件建立後,類命名空間中所有的命名都是有效屬性名。類物件有兩種操作 屬性引用 obj.name 和例項化 類定義了init 方法的話,類的例項化操作會自動呼叫init 方法。init 方法可以有引數,引數通過init 傳遞到類的例...