day 15 homework

1. 建立一個汽車類Auto,包括輪胎個數(shù),汽車顏色,車身重量,速度等屬性,并通過不同的構(gòu)造方法創(chuàng)建實例。至少要求 汽車能夠加速 減速 停車。 再定義一個小汽車類CarAuto 繼承Auto 并添加空調(diào)、CD屬性,并且重新實現(xiàn)方法覆蓋加速、減速的方法


class Auto:
    def __init__(self, color, weight, speed):
        self._count = 4
        self.color = color
        self.weight = weight
        self.speed = speed

    def speed_up(self):
        self.speed += 10
        return self.speed

    def speed_cut(self):
        self.speed -= 10
        return self.speed


class CarAuto(Auto):
    def __init__(self, color, weight, speed):
        super().__init__(color, weight, speed)
        self.air = '有空調(diào)'
        self.cd = '能放cd'

    def speed_up(self):
        self.speed += 15
        return self.speed

    def speed_cut(self):
        self.speed -= 15
        return self.speed


c1 = CarAuto('write', '10t', 50)
print(c1.color)
  1. 創(chuàng)建一個Person類,添加一個類字段用來統(tǒng)計Perosn類的對象的個數(shù)

class Person:
    count = 0

    def __init__(self, name):
        self.name = name
        Person.count += 1


p1 = Person('hello')
p2 = Person('HELLO')
print(Person.count)
  1. 創(chuàng)建一個動物類,擁有屬性:性別、年齡、顏色、類型 ,

    要求打印這個類的對象的時候以'/XXX的對象: 性別-? 年齡-? 顏色-? 類型-?/' 的形式來打印

class Animal:
    def __init__(self, sex, age, color, type1):
        self.sex = sex
        self.age = age
        self.color = color
        self.type1 = type1

    def print_ani(self):
        return '%s的對象 性別:%s 年齡:%s 顏色:%s 類型:%s' % (Animal.__name__, self.sex, self.age, self.color, self.type1)


a = Animal('男', '18', 'yellow', 'cat').print_ani()
print(a)
  1. 寫一個圓類, 擁有屬性半徑、面積和周長;要求獲取面積和周長的時候的時候可以根據(jù)半徑的值把對應(yīng)的值取到。但是給面積和周長賦值的時候,程序直接崩潰,并且提示改屬性不能賦值
class YouWantTodDead(Exception):
    def __str__(self):
        return '嘗試修改只讀屬性值'


class Roundness:
    def __init__(self, r1: int):
        self._r1 = r1
        self._area = 3.14 * r1**2
        self._perimeter = 6.28 * r1

    def show(self):
        print(self._area, self._perimeter)

    @property
    def r1(self):
        return self._r1

    @r1.setter
    def r1(self, value):
        self._r1 = value
        self._area = 3.14 * self._r1**2
        self._perimeter = 6.28 * self._r1

    @property
    def area(self):
        return self._area

    @area.setter
    def area(self, value):
        print('不能修改面積')
        raise YouWantTodDead

    @property
    def perimeter(self):
        return self._area

    @perimeter.setter
    def perimeter(self, value):
        print('不能修改周長')
        raise YouWantTodDead


r2 = Roundness(5)
r2.show()
# r2.perimeter = 7
# r2.area = 15
r2.r1 = 15
r2.show()
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.建立一個汽車類Auto,包括輪胎個數(shù),汽車顏色,車身重量,速度等屬性,并通過不同的構(gòu)造方法創(chuàng)建實例。至少要求 ...
    曉剛啦閱讀 199評論 0 0
  • 賦值時要求age的值只能在0-150之間,超過范圍報錯;獲取age的值的時候,返回年齡值,并且返回這個年齡對應(yīng)的階...
    芽菜包66閱讀 208評論 0 0
  • 時間關(guān)系 代碼只基本實現(xiàn)題目基本要求 最后一題使用昨天作業(yè)模塊快速實現(xiàn) 1. 建立一個汽車類Auto -包括輪胎個...
    ham731閱讀 453評論 0 1
  • 1 建立一個汽車類Auto,包括輪胎個數(shù),汽車顏色,車身重量,速度等屬性,并通過不同的構(gòu)造方法創(chuàng)建實例。至少要求 ...
    生命在于不睡覺閱讀 289評論 0 0
  • 1.建立一個汽車類Auto,包括輪胎個數(shù),汽車顏色,車身重量,速度等屬性,并通過不同的構(gòu)造方法創(chuàng)建實例。 至少要求...
    不語sun閱讀 223評論 0 0

友情鏈接更多精彩內(nèi)容