Day16作業(yè)

1.定義一個學生類。有屬性:姓名、年齡、成績(語文,數(shù)學,英語)[每課成績的類型為整數(shù)] 方法: a. 獲取學生的姓名:

getname() b. 獲取學生的年齡:getage() c. 返回3門科目中最高的分數(shù)。get_course()
class StuCourse:
   def __init__(self,name,age,*scores):
       self.name =name
       self.age = age
       self.scores =scores
   def top_score(self):
       return max(self.scores)

stu1 = StuCourse('張三',18,89,96,75)
print(getattr(stu1,'name'))
print(getattr(stu1,'age'))
print(stu1.top_score())

2.建立一個汽車類Auto,包括輪胎個數(shù),汽車顏色,車身重量,速度等成員變量,并通過不同的構造方法創(chuàng)建實例。至少要求 汽車能夠加速 減速 停車。 再定義一個小汽車類CarAuto 繼承Auto 并添加空調、CD等成員變量 覆蓋加速 減速的方法

class Auto:
    def __init__(self,tyre_number,color,weight,speed):
        self.tyre_number = tyre_number
        self.color = color
        self.weight =weight
        self.speed = speed
    def speed_up(self):
        self.speed += 2
    def speed_cut(self):
        self.speed -= 2
    def stop(self):
        self.speed = 0

class CarAuto(Auto):
    def __init__(self,tyre_number,color,weight,speed,air_conditioner,CD):
        super().__init__(tyre_number,color,weight,speed)
        self.air_conditioner = air_conditioner
        self.CD = CD
    def speed_up(self):
        pass
    def speed_cut(self):
        pass

car1 = CarAuto(4,'yellow',1000,10,'on','that girl')
print(car1.speed,car1.air_conditioner)

3.創(chuàng)建一個名為User 的類,其中包含屬性firstname 和lastname ,還有用戶簡介通常會存儲的其他幾個屬性。在類User 中定義一個名 為describeuser() 的方法,它打印用戶信息摘要;再定義一個名為greetuser() 的方法,它向用戶發(fā)出個性化的問候。

import random
class User:
    def __init__(self,first_name,last_name,age = 18, tel= 1234567):
        self.first_name = first_name
        self.last_name = last_name
        self.age = age
        self.tel = tel
    def describe_user(self):
        print(str(self.__dict__)[1:-1])
    def greet_user(self):
        print('hello,%s' % (self.first_name+self.last_name))
class Admin(User):
    def __init__(self,first_name,last_name,age = 18, tel= 1234567):
        super().__init__(first_name,last_name)
        self.privileges = ['can add post','can delete post', 'can ban user']
    def show_privileges(self):
        n =random.randint(0,2)
        print(self.privileges[n])


admin = Admin('李','源')
admin.describe_user()
admin.greet_user()
admin.show_privileges()

管理員是一種特殊的用戶。編寫一個名為Admin 的類,讓它繼承User類。添加一個名為privileges 的屬性,用于存儲一個由字符串(如"can add post"、"can delete post"、"can ban user"等)組成的列表。編寫一個名為show_privileges()的方法,它顯示管理員的權限。創(chuàng)建一個Admin 實例,并調用這個方法。

4.創(chuàng)建一個Person類,添加一個類字段用來統(tǒng)計Perosn類的對象的個數(shù)

class Person:
    number = 0
    def __init__(self):
        Person.number += 1

person1 =Person()
person2 =Person()
print(Person.number)

(嘗試)5.寫一個類,其功能是:1.解析指定的歌詞文件的內容 2.按時間顯示歌詞 提示:歌詞文件的內容一般是按下面的格式進行存儲的。歌詞前面對應的是時間,在對應的時間點可以顯示對應的歌詞

[00:00.20]藍蓮花
[00:00.80]沒有什么能夠阻擋
[00:06.53]你對自由地向往
[00:11.59]天馬行空的生涯
[00:16.53]你的心了無牽掛
02:11.27[00:21.95]穿過幽暗地歲月 02:16.51[00:26.83]也曾感到彷徨
02:21.81[00:32.30]當你低頭地瞬間 02:26.79[00:37.16]才發(fā)覺腳下的路
02:32.17心中那自由地世界
02:37.20如此的清澈高遠
02:42.32盛開著永不凋零
02:47.83藍蓮花

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容