|
1 引言 在Python中面向?qū)ο笞钪匾母拍罹褪穷惡蛯嵗?,類是抽象的模板(class) 而實例是根據(jù)類創(chuàng)建出來的一個個具體的“對象”,每個對象都擁有相同的方法,但各自的數(shù)據(jù)可能不同。 定義類是通過class關(guān)鍵字,class后面緊接著類名,類名通常是大寫開頭的單詞;因為類可以有模板的效果,所以在創(chuàng)建實例的時候需要把綁定的屬性強制填進去,通過定義一個__init__來綁定,除此以外,還需要進行數(shù)據(jù)封裝見一下的實例。 2 問題描述 編寫程序,創(chuàng)建三個學(xué)生類,有姓名,有年齡,有性別,有英語成績,數(shù)學(xué)成績,語文成績,封裝方法,求總分,平均分。 3 算法描述 類和實例第一步將其屬性編寫出來,利用關(guān)鍵字class進行定義 Student(object)再后來利用初始化__init__綁定要添加的屬性,在初始化中,只需要填,如self.name=name類似,最后在定義一個get_information(self)打印出來就行。 4 結(jié)語 本課題主要是探討了類和屬性與數(shù)據(jù)封裝黨的簡單操作,類是創(chuàng)建實例的模板,而實例是一個具體的對象,各個實例擁有的數(shù)據(jù)都相互獨立,互不影響,方法就是與實例綁定的函數(shù),和普通函數(shù)不同,方法可以直接訪問實例的數(shù)據(jù),通過對實例的調(diào)用直接操作對象內(nèi)部的數(shù)據(jù)。 附件 class Student(): def __init__(self,name,age,sex,english,math,chinese): self.name=name self.age=age self.sex=sex self.english=english self.math=math self.chinese=chinese
def add(self): return self.english + self.math + self.chinese
def average(self): return self.add()/3
def get_information(self): print("name:%s,age:%d,sex:%s,總分:%d,平均分:%d" % (self.name,self.age,self.sex,self.add(),self.average()))
Bob = Student("Bob",18,"男",80,80,80) Bob.get_information()
class Student(): def __init__(self,name,age,sex,english,math,chinese): self.name=name self.age=age self.sex=sex self.english=english self.math=math self.chinese=chinese
def add(self): return self.english + self.math + self.chinese
def average(self): return self.add()/3
def get_information(self): print("name:%s,age:%d,sex:%s,總分:%d,平均分:%d" % (self.name,self.age,self.sex,self.add(),self.average()))
Leo = Student("Leo",18,"男",80,90,87) Leo.get_information()
class Student(): def __init__(self,name,age,sex,english,math,chinese): self.name=name self.age=age self.sex=sex self.english=english self.math=math self.chinese=chinese
def add(self): return self.english + self.math + self.chinese
def average(self): return self.add()/3
def get_information(self): print("name:%s,age:%d,sex:%s,總分:%d,平均分:%d" % (self.name,self.age,self.sex,self.add(),self.average()))
Kian = Student("Kian",18,"女",90,80,94) Kian.get_information() |
|