1.定義一個(gè)學(xué)生類湿痢,有屬性:姓名,年齡扑庞,成績(jī)(語數(shù)外)(成績(jī)?yōu)檎麛?shù))譬重。方法:a.獲取學(xué)生的姓名:getname()b.獲取學(xué)生的年齡getage c.獲取最高成績(jī)
class Student:
def __init__(self,name,age,score=[]):
self.name=name
self.age=age
self.score=score
def get_name(self):
print(self.name)
def get_age(self):
print(self.age)
def get_highest_score(self):
for score in self.score:
max_score=self.score[0]
if score > max_score:
max_score=score
print('最高成績(jī)?yōu)?s'%max_score)
s1=Student('大黃',10,[80,90,99])
s1.get_age()
s1.get_name()
print(s1.score)
s1.get_highest_score()
2.建立一個(gè)汽車類Auto,擁有屬性 輪胎個(gè)數(shù)罐氨,顏色臀规,重量,速度等栅隐,擁有方法為加速塔嬉,減速和停車玩徊。建一個(gè)小汽車類CarAuto,繼承Auto的屬性和方法谨究,并添加cd恩袱,和空調(diào)等屬性,并且重新定義加速和減速的方法
class Auto:
def __init__(self,number=4,color='',weight=1,speed=100):
self.number=number
self.color=color
self.weight=weight
self.speed=speed
def acceleration(self):
print('%s正在加速'%self.name)
def decleration(self):
print('%正在減速'%self.name)
def park(self):
print('%正在停車'%self.name)
class CarAuto(Auto):
def __init__(self):
self.cd='有播放CD功能'
self.air_condition='有空調(diào)系統(tǒng)'
def acceleration(self):
print('瘋狂加速')
def decleration(self):
print('靈活減速')
c1=CarAuto()
print(c1.cd,c1.air_condition)
c1.acceleration()
c1.decleration()
3.創(chuàng)建一個(gè)User的類胶哲,其中包含屬性firstname和lastname憎蛤,還有用戶簡(jiǎn)介通常會(huì)存儲(chǔ)的幾個(gè)屬性,在User類中定義一個(gè)describe user的方法來描述用戶的信息纪吮,定義一個(gè)greetuser的方法俩檬,來向用戶問好。
編寫一個(gè)Admin的類碾盟,來繼承User的類棚辽。添加一個(gè)名為privileges的屬性,用于存儲(chǔ)一個(gè)由字符串(‘can add post’冰肴,‘can delete post ’屈藐,‘can ban user’等)組成的列表。編寫一個(gè)名為show_privileges()的方法熙尉,它顯示管理員的權(quán)限联逻。創(chuàng)建一個(gè)Admin的實(shí)例,并調(diào)用這個(gè)方法检痰。
class User:
def __init__(self,firstname,lastname,age=20,sex='男'):
self.firstname=firstname
self.lastname=lastname
self.age=age
self.sex=sex
def describe_user(self):
print('用戶信息為 姓:%s 名:%s 性別:%s 年齡:%d'%(self.firstname,self.lastname,self.sex,self.age))
def greet_user(self):
print('早上好%s%s '%(self.firstname,self.lastname))
u1=User('張','偉')
u1.describe_user()
u1.greet_user()
class Admin(User):
#定義類字段來表示管理員的權(quán)限
a=['1.can add post','2.can delete post','3.can ban user']
def __init__(self,privileges=a):
self.privileges=privileges
@classmethod
def show_privileges(cls):
print('管理員的權(quán)限為')
print(cls.a)
Admin.show_privileges()
4.創(chuàng)建一個(gè)Person類包归,添加一個(gè)類字段來統(tǒng)計(jì)person類的對(duì)象個(gè)數(shù)
class Person:
#用number來統(tǒng)計(jì)創(chuàng)建對(duì)象的個(gè)數(shù),初始為0
number=0
def __init__(self):
#每使用一個(gè)對(duì)象屬性時(shí)铅歼,創(chuàng)建對(duì)象個(gè)數(shù)加1
Person.number+=1
def __del__(self):
#每刪除一個(gè)對(duì)象時(shí)公壤,總創(chuàng)建對(duì)象個(gè)數(shù)減1
Person.number -= 1
u1=Person()
u2=Person()
u3=Person()
print(Person.number)
del u1
print(Person.number)