# -*- coding:utf-8 -*-# python
是物件導向的程式語言
,物件導向特點:繼承、封裝、多型
# 物件導向程式設計:和面向過程一樣,是一種程式設計思想
# 類和物件:
# 什麼是類?類是具有相同屬性和行為方法的事物的抽象的集合
# 類的例子: 人類、魚類、猴子類
# 人類的屬性: 身高、體重、性別、年齡、姓名
# 人類的行為: 吃喝拉撒睡
# 什麼是物件? 類的具體的例項化
# 人類中的物件:馬雲、麻花騰、丁三石
# 類的作用:建立物件,一般會在類中定義一些屬性和函式,當使用類建立物件的時候,
# 該物件就會擁有類中定義的這些屬性和函式
# 類中一些屬性和函式,是由所有的物件身上共同的屬性和行為抽離出來的
# 物件的作用:實現函式和屬性的呼叫執行的
d1 =
d2 =
student_list = [d1,d2]# 在
python
中如何宣告乙個型別:
# class
班級群體
# object
繼承的父類
object
基類、頂級父類
class people(object):
# pass
保證語法完整性
# pass
# 人出生的時候,已經具有的性別、年齡、身高、體重
def
__init__(self
,name,age,phone):
# 在這個函式中需要將建立物件時就應該擁有的一些屬性賦值
# 物件
.屬性名
= 屬性值
self.name = name
self.age = age
self.phone = phone
# 使用
people
類建立乙個物件
# 物件名
= 類名
()#
當建立乙個物件時,會在記憶體中開闢一塊空間,來存放這個物件,這個物件是有乙個位址的
# 每次建立的物件都是乙個單獨個體,他們的記憶體位址都是不一樣的
p1 = people('張三'
,22,110)
# <__main__.people object at 0x0000000000a6c550>
# 0x0000000000a6c550
記憶體位址
# 記憶體: 程式執行時,在計算機中占用的空間
# python
中自動管理記憶體的
# 電腦上的
500gb 1tb
這種事硬碟空間(儲存空間)
print(p1)
# 獲取物件的屬性值
# 格式:物件
.屬性名
name = p1.name
print(name)
age = p1.age
print(age)
# 物件
.屬性名
= 屬性值
# 修改物件的屬性值
p1.name = '李四'
print(p1.name)
# python
中用來設定物件屬性值的函式
# setattr()
# 第乙個引數,要設定屬性值的物件;第二個引數,要設定的屬性名;第三個引數,要設定的屬性值
setattr(p1,
'age'
,21)
print(p1.age)
# 可以給物件新增新的屬性
# 物件
.屬性名
= 屬性值 如果這個屬性不存在,那就是新增屬性
p1.*** = '男'
print(p1.***)
# 刪除物件的屬性
# 物件的屬性被刪除之後,就不能再使用了
del p1.***
# 刪除物件屬性的函式
# 1.
要刪除的物件
2.要刪除額屬性名
# delattr(p1,'phone')
# 刪除之後,就不能再使用這個屬性了
# print(p1.phone)
# setattr()
動態新增屬性
attr_dict =
# for
迴圈遍歷字典
for key,value in attr_dict.items():
# key
是屬性名 ,
value
是屬性值
# setattr
,可以將乙個字串的屬性名,新增到物件的屬性中
# p1.key = value
這種方式無法新增,相當於寫了
p1.'iq' = '150'
setattr(p1,key,value)
print(p1.iq)
# delattr()
動態刪除屬性
# 刪除物件
p1中的屬性
attr_list = ['iq'
,'eq'
,'color']
for attr in attr_list:
# 可以使用
delattr
函式刪除
delattr(p1, attr)
# 物件的屬性刪除之後,不可使用
# print(p1.iq)
C 類和物件詳解
2 封裝 3 類的例項化 4 this指標 5 類六大預設函式 6 再談建構函式 7 static成員 8 c 11的成員就地初始化 9 友元 10 內部類 1.1 面向過程 面向過程是一種自上而下的程式設計方法。過程式的特徵是以函式為中心,用函式作為劃分程式的基本單位。關注的是過程,分析出求解問題...
Python的類和物件
實現步驟 1.確定職責 2.物件內部封裝呼叫不同方法 多個 3.不同物件呼叫不同的方法 類和物件 類 模板,物件都是根據這個模板建立出來的 類只需要有乙個,物件可以有多個 類有屬性和方法 1.類名 駝峰命名,不加下劃線 studentinfo 2.屬性 3.方法 示例 class cat def e...
Python類和物件
1 建立類 語法 class classname 類的幫助資訊 類文件字串 class suite 類體 例如 class employee 所有員工的基類 empcount 0 def init self,name,salary self.name name self.salary salary ...