0.定義一個(gè)學(xué)生類啦鸣。有屬性:姓名、年齡来氧、成績(語文诫给,數(shù)學(xué),英語)[每課成績的類型為整數(shù)]
方法:
a. 獲取學(xué)生的姓名:getname()
b. 獲取學(xué)生的年齡:getage()
c. 返回3門科目中最高的分?jǐn)?shù)啦扬。get_course()
class Student:
def __init__(self, name, age, ch_score, math_score, en_score):
self.name = name
self.age = age
self.ch_score = ch_score
self.math_score = math_score
self.en_score = en_score
def get_name(self):
print(self.name)
def get_age(self):
print(self.age)
def get_course(self):
max_score = max(self.ch_score, self.math_score, self.en_score)
print(max_score)
def main():
stu = Student('stu1', '男', 78, 89, 90)
stu.get_name()
stu.get_age()
stu.get_course()
if __name__ == '__main__':
main()
1.建立一個(gè)汽車類Auto中狂,包括輪胎個(gè)數(shù),汽車顏色扑毡,車身重量胃榕,速度等成員變量,并通過不同的構(gòu)造方法創(chuàng)建實(shí)例瞄摊。至少要求 汽車能夠加速 減速 停車勋又。
再定義一個(gè)小汽車類CarAuto 繼承Auto 并添加空調(diào)、CD等成員變量 覆蓋加速 減速的方 法
class Auto:
def __init__(self, tire_num, color, weight, vel):
self.tire_num = tire_num
self.color = color
self.weight = weight
self.vel = vel
def speed(self):
print('一輛重{}頓有{}輪子{}的汽車,正在加速'.format(self.weight, self.tire_num, self.color))
def slow_down(self):
print('一輛重{}頓有{}輪子{}的汽車,正在減速'.format(self.weight, self.tire_num, self.color))
def stop(self):
print('一輛重{}頓有{}輪子{}的汽車,正在停車'.format(self.weight, self.tire_num, self.color))
class CarAuto(Auto):
def __init__(self, tire_num, color, weight, vel, air='美的空調(diào)', cd='cd'):
super().__init__(tire_num, color, weight, vel)
self.air = air
self.cd = cd
def speed(self):
print('一輛重{}頓有{}輪子{}的有{}和{}汽車,正在加速'.format(self.weight, self.tire_num, self.color, self.air, self.cd))
def slow_down(self):
print('一輛重{}頓有{}輪子{}的有{}和{}汽車,正在減速'.format(self.weight, self.tire_num, self.color, self.air, self.cd))
def main():
auto = Auto(10, '藍(lán)色', 15, 80)
auto.speed()
auto.slow_down()
auto.stop()
carauto = CarAuto(4, '橙色', 5, 120)
carauto.speed()
carauto.slow_down()
carauto.stop()
if __name__ == '__main__':
main()
2.創(chuàng)建一個(gè)名為User 的類换帜,其中包含屬性firstname 和lastname 楔壤,還有用戶簡介通常會(huì)存儲(chǔ)的其他幾個(gè)屬性。在類User 中定義一個(gè)名 為describeuser() 的方法惯驼,它打印用戶信息摘要;再定義一個(gè)名為greetuser() 的方法蹲嚣,它向用戶發(fā)出個(gè)性化的問候递瑰。
管理員是一種特殊的用戶。編寫一個(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, first_name, sex, age, last_name):
self.first_name = first_name
self.last_name = last_name
self.sex = sex
self.age = age
def describeuser(self):
print()
def greetuser(self):
print('Hello,{}'.format(self.last_name))
class Admin(User):
def __init__(self, *privileges,first_name, sex, age, last_name):
super().__init__(first_name, sex, age, last_name)
self.pri = list(privileges)
def show_privileges(self):
print('{}權(quán)限是{}'.format(self.last_name+self.first_name,self.pri))
def main():
user = User('hy', '男', 24, 'l')
admin = Admin("can add post", "can delete post", "can ban user", first_name=user.first_name, sex=user.sex, age=user.age, last_name=user.last_name)
admin.show_privileges()
if __name__ == '__main__':
main()
3.創(chuàng)建一個(gè)Person類讯屈,添加一個(gè)類字段用來統(tǒng)計(jì)Perosn類的對(duì)象的個(gè)數(shù)
import sys
class Person:
def __init__(self):
pass
def main():
num1 = sys.getrefcount(Person)
p1 = Person()
p2 = Person()
num2 =sys.getrefcount(Person)
print('對(duì)象個(gè)數(shù):{}'.format(num2-num1))
if __name__ == '__main__':
main()