day14-homework

1.建立一个汽车类Auto,包括轮胎个数,汽车颜色,车身重量,速度等属性,并通过不同的构造方法创建实例。至少要求 汽车能够加速 减速 停车。 再定义一个小汽车类CarAuto 继承Auto 并添加空调、CD属性,并且重新实现方法覆盖加速、减速的方法

2.创建一个Person类,添加一个类字段用来统计Perosn类的对象的个数

3.创建一个动物类,拥有属性:性别、年龄、颜色、类型 ,要求打印这个类的对象的时候以'/XXX的对象: 性别-? 年龄-? 颜色-? 类型-?/' 的形式来打印

class Animal:
    def __init__(self,color, type, gender='雄性', age=0):
        self.gender = gender
        self.age = age
        self.color = color
        self.type = type

    def func1(self):
        print('%s的对象:性别-%s 年龄-%d 颜色-%s 类型-%s' % (Animal.__name__, self.gender, self.age, self.color, self.type))


a1 = Animal(color='白色', type='猫', age=2)
a1.func1()

4.写一个圆类, 拥有属性半径、面积和周长;要求获取面积和周长的时候的时候可以根据半径的值把对应的值取到。但是给面积和周长赋值的时候,程序直接崩溃,并且提示该属性不能赋值

class AreaError(Exception):
    def __str__(self):
        return '该属性不能赋值'


class PerimeterError(Exception):
    def __str__(self):
        return '该属性不能赋值'


class Circle:
    def __init__(self, radius, area=0, perimeter=0):
        self.radius = radius
        self._area = area
        self._perimeter = perimeter

    @property
    def area(self):
        return math.pi * self.radius ** 2

    @property
    def perimeter(self):
        return 2 * math.pi * self.radius

    @area.setter
    def func1(self, a):
        raise AreaError
    
    @perimeter.setter
    def func2(self, b):
        raise PerimeterError


c1 = Circle(3)
print(c1.area, c1.perimeter)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1/579文件IO文件介绍I/O流流的概念读写文件文件备份IO介绍大家应该听说过一句话:“好记性不如烂笔头”。不仅...
    清清子衿木子水心阅读 1,459评论 0 1
  • 8月22日-----字符串相关 2-3 个性化消息: 将用户的姓名存到一个变量中,并向该用户显示一条消息。显示的消...
    future_d180阅读 997评论 0 1
  • HTML 5 HTML5概述 因特网上的信息是以网页的形式展示给用户的,因此网页是网络信息传递的载体。网页文件是用...
    阿啊阿吖丁阅读 4,056评论 0 0
  • 最近因为在离职,从来不总结的我,希望也能慢慢的开始总结起来,很多东西,需要深入思考(这大概就是我太肤浅的原因,扶额...
    擅长尬聊阅读 4,353评论 1 3
  • 你 从水乡走来 从梦中走来 从遥远的记忆中走来 我 走进了蓝色记忆 走了梦里水乡 走进了你 款款,傲媚 件件,丰腴...
    六月孺子牛阅读 512评论 20 10