python 物件導向基礎

來源:互聯網
上載者:User

標籤:管理   info   for   lse   ade   數學   基礎   course   大學   

>>> class P:pass
...
>>> type(P)
<class ‘type‘>
>>> p = P()
>>> type(p)
<class ‘__main__.P‘>

P 是一個模板(模具),執行個體是通過這個模板(模具),
添加了不同的初始化參數生產出來的具體產品,
可以有多個,且每個具體產品可以有不同參數設定不同的造型。

類:

管理一組資料(可以是0個、1個或多個),以及提供操作這組資料的

相關方法,資料和方法組成了類。

class Person(object):   #定義一個類
    def __init__(self,name,sex,height,weight,bachelor):   #申明人的一些屬性
        self.name = name
        self.sex =  sex
        self.height = height
        self.weight = weight
        self.bachelor = True

        defprint_name(self)   #定義一個列印姓名的方法

            Print(self.name)

wulaoshi = Person("wulaoshi", "M",180, "200", True)  #執行個體化一個對象 吳老師

lilaoshi = Person("lilaoshi", "M",101, ”160”, False)

print (wulaoshi.sex)  

print (lilaoshi.weight)

 2.學生學習成績講解

# encoding=utf-8
class Student(object):
student_num=0 #類變數 學生數量
def __init__(self,name,school,grade,course=[],course_grade={}):
self.name = name
self.school = school
self.grade =grade
self.course = course
self.course_grade = course_grade
Student.student_num+=1 #類變數前面加類名Student

def get_name(self):
return self.name
def get_course(self): #擷取這個學生所有學習的課程(列印)
print(self.course)
def set_course(self, course):
self.course = course
def set_course_grade(self, course_grade): #設定學生學習課程的成績
self.course_grade = course_grade

def get_course_grade(self):
print(self.name + "的學習成績如下:")
for course, grade in self.course_grade.items(): #學習成績用dict表示,擷取學生課程的成績用key,value取出來
print("%s:%s" % (course, grade))

s1=Student("猴子","南昌大學" ,"電腦2014級")
s2=Student("虎子","山西大學" ,"文學系2016級")
s1.set_course(["電腦","線性代數","java基礎"]) #執行個體化這個學生學習的課程,用一個list來表示
s2.set_course(["語文","數學","英語"])
s1.get_course()
s2.get_course()

s1.set_course_grade({"電腦":81,"線性代數":75,"java基礎":90}) #執行個體化學習課程的成績,用dict表示
s2.set_course_grade({"語文":82,"數學":72,"英語":68})
s1.get_course_grade()
print("*" * 20)
s2.get_course_grade()
print(Student.student_num)

 



 

python 物件導向基礎

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.