1.類
描述具有相同屬性與方法的物件的集合。
2.建立類
使用class來建立乙個新類,class之後為類的名稱並以冒號結尾
3.程式
14.例項化#!/usr/bin/python2#
-*- coding: utf-8 -*-34
class
employee:5'
所有員工的基類
'6 empcount =078
def__init__
(self, name, salary):
9 self.name =name
10 self.salary =salary
11 employee.empcount += 1
1213
defdisplaycount(self):
14print
"total employee %d
" %employee.empcount
1516
defdisplayemployee(self):
17print
"name :
", self.name, "
, salary:
", self.salary
不需要new、
5.程式
16.執行結果#-*- coding: utf-8 -*-
2from classtest1 import
employee3"
建立 employee 類的第乙個物件
"4 emp1 = employee("
zara
", 2000)
5emp1.displaycount()
6emp1.displayemployee()7"
建立 employee 類的第二個物件
"8 emp2 = employee("
manni
", 5000)
9emp2.displaycount()
10emp2.displayemployee()
1112
print employee.empcount
注意點:empcount變數是乙個類變數,它的值可以在類的所有例項之間共享,可以在內部類或者外部類使用employee.empcount訪問。
7.操作屬性(新增,修改,刪除)
18.效果#-*- coding: utf-8 -*-
2from classtest import
employee3"
建立 employee 類的第乙個物件
"4 emp1 = employee("
zara
", 2000)
5emp1.displaycount()
6emp1.displayemployee()7"
建立 employee 類的第二個物件
"8 emp2 = employee("
manni
", 5000)
9emp2.displaycount()
10emp2.displayemployee()
1112
employee.empcount
1314
'********************='15
16#操作屬性
17 emp1.age = 7 #
新增乙個 'age' 屬性
18print
emp1.age
19 emp1.age = 8 #
修改 'age' 屬性
20print
emp1.age
21del emp1.age #
刪除 'age' 屬性
2223
#利用以下函式操作屬性
24 setattr(emp1, '
age', 8) #
新增屬性 'age' 值為 8
25print hasattr(emp1, '
age') #
如果存在 'age' 屬性返回 true。
26print getattr(emp1, '
age') #
返回 'age' 屬性的值
27 delattr(emp1, '
age') #
刪除屬性 'age'
9.內建類的屬性
__dict__
類的屬性,包含乙個字典
__doc__
類的文件字串
__name__
類名__module__
類定義所在的模組
__bases__
類的所有父類構成的元素,包含乙個元組
10.程式
111.類的私有屬性和私有方法"employee.__doc__:
", employee.__doc__
2print
"employee.__name__:
", employee.__name__
3print
"employee.__module__:
", employee.__module__
4print
"employee.__bases__:
", employee.__bases__
5print
"employee.__dict__:
", employee.__dict__
類的私有屬性:
__private_attrs:兩個下劃線開頭,生命該屬性為私有,不能在外部被使用,在內部可以self.__private_attrs。
類的方法:
類的方法必須使用引數self,且是第乙個引數
類的私有方法:
__privvate_method:兩個下劃線開頭,宣告為私有方法,不能被外部呼叫,內部可以呼叫,self.__private_methods。
12.繼承
語法:class 派生類名 (基類名)
13.方法重寫
14.多型
python不支援多型也不用多型。
python物件導向學習 python物件導向學習
物件導向最重要的概念就是類 class 和例項 instance 必須牢記類是抽象的模板,比如student類,而例項是根據類建立出來的乙個個具體的 物件 每個物件都擁有相同的方法,但各自的資料可能不同。物件導向三個概念 1.封裝 即把客觀事物封裝成抽象的類,並且類可以把自己的資料和方法讓可信的類進...
python物件導向總結 Python物件導向總結
python 物件導向 oop 1 物件導向 是乙個更大封裝,把乙個物件封裝多個方法 2 類 是對一些具有相同特徵或行為的事物的乙個統稱,是抽象的,不能直接使用 特徵被稱為屬性 行為被稱為方法 3 物件 是由類建立出來的乙個具體的存在,可以直接使用 先有類再有物件,類只有乙個,而物件可以有多個 類中...
python登入物件導向 python 物件導向
一 屬性和方法 1.a a 例項屬性 通過例項物件來新增的屬性就是例項屬性 a.count 10 例項方法都是在類中直接定義的 以self為第乙個引數的方法都是例項方法 當通過例項物件呼叫時,會自動傳遞當前物件作為self傳入 當通過類物件呼叫時,不會自動傳遞self a.test 等價於 a.te...