exercise

1.声明一个电脑类: 属性:品牌、颜 、内存 法:打游戏、写代码、看视频
a.创建电脑类的对象,然后通过对象点的 式获取、修改、添加和删除它的属性 b.通过attr相关 法去获取、修改、添加和删除它的属性

class Computer:
    """电脑类"""
    def __init__(self, brand='联想', color='黑色', memory=0):
        self.brand = brand
        self.color = color
        self.memory = memory

    @staticmethod
    def play_game(game):
        print('玩儿%s' % game)

    @staticmethod
    def code():
        print('写python代码')

    @staticmethod
    def watch_video(video):
        print('在看%s' % video)

com1 = Computer(memory=512)
# 查
print(com1.color)
print(getattr(com1, 'color', '白色'))
# 改
com1.brand = '戴尔'
setattr(com1, 'brand', '华硕')
# 增
# com1.size = 13.5
setattr(com1, 'size', 15)
print(com1.size)
# 删
del com1.size
delattr(com1, 'memory')

2.声明一个狗的类和人的类:
狗的属性:名字、颜色、 年龄 狗的方法:叫唤
人的属性:名字、 年龄、狗 人的方法:遛狗
a.创建人的对象小明,让他拥有一条狗大黄 ,然后让小明去遛大黄

class Dog:
    def __init__(self,name,color,age):
        self.name = name
        self.color = color
        self.age = age
    def bark(self):
        print('汪汪汪!')

class Person:
    def __init__(self,name,age):
        self.name = name
        self.age = age
        self.dog = None
    def walk_the_dog(self):
        return print(self.name+self.dog.name+'一起散步')


p1 = Person('小明',16)
p1.dog=Dog('点点','白色',1)
p1.walk_the_dog()

#小明点点一起散步

3.声明一个矩形类:
属性: 长宽 方法:计算周长和面积
a.创建不同的矩形,并且打印其周长和面积

class Rectangle:
    def __init__(self, length1, width1):
        self.length = length1
        self.width = width1

    def area(self):
        return self.length * self.width

    def perimeter(self):
        return (self.length + self.width) * 2

r1=Rectangle(2,5)
r2=Rectangle(10,20)
r3=Rectangle(50,80)
print('r1面积是:%d'%r1.area(),'r2面积是:%d'%r2.area(),'r3面积是:%d'%r3.area())
print('r1周长是:%d'%r1.perimeter(),'r2周长是:%d'%r2.perimeter(),'r3周长是:%d'%r3.perimeter())

#r1面积是:10 r2面积是:200 r3面积是:4000
#r1周长是:14 r2周长是:60 r3周长是:260

4.创建一个学生类:
属性:姓名, 年龄,学号 方法:答到,展示学生信息
创建一个班级类: 属性:学生,班级名 方法:添加学生,删除学生,点名

class Student():
    """学生"""
    def __init__(self,name='',age=0,id=''):
        self.name=name
        self.age=age
        self.id=id
    def answer(self):
        print('%s,到'% self.name)
    def show_info(self):
        print('姓名是:%s,年龄:%d,学号是%s'%(self.name,self.age,self.id))
class Class():
    """班级"""
    def __init__(self,name=''):
        self.name=name
        self.student=[]#里面是学生对象
        self.__num = 0

    def add_student(self):
        name = input('请输入学生的姓名:')
        age = input('请输入学生的年龄:')
        self.__num += 1
        id = 'python' + str(self.__num).rjust(3, '0')
        stu=Student(name,int(age),id)
        self.student.append(stu)

    def del_student(self):
        del_name=input('请输入要删除的学生姓名:')
        a = True
        for student in self.student[:]:
            if del_name==student.name:
                self.student.remove(student)
                print('删除成功!')
                a = False
        if a:
            print('没有该学生')

    def ask_name(self):
        """点名"""
        for student in self.student[:]:
            print(student.name)
            student.answer()


class1=Class('python1806')
for i in range(3):
    class1.add_student()
class1.del_student()
class1.ask_name()

5.写一个类,封装所有和数学运算相关的功能(包含常用功能和常用值, 如:pi,e等)

class Math:
    pi = 3.14159265358
    e = 2.7

    @staticmethod
    def sum_double(num1, num2):
        return num1 + num2

    @classmethod
    def circle_area(cls, r):
        return cls.pi * r**2

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.声明一个电脑类:属性:品牌、颜色、内存大小 方法:打游戏、写代码、看视频a.创建电脑类的对象,然后通过对象点...
    rzlong阅读 140评论 0 0
  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 30,390评论 8 265
  • 一、快捷键 ctr+b 执行ctr+/ 单行注释ctr+c ...
    o_8319阅读 6,066评论 2 16
  • yield关键字和生成器 生成器:a.可以看成是一个可以存储多个数据的容器。需要里的数据的时候就生成一个,里面的数...
    慢节拍_2709阅读 295评论 0 6
  • 反射:在程序的运行过程中,能够探测类所拥有的属性和行为的一种能力,把这种机制成为反射. 反射的使用场景: 1>把字...
    西柚籽阅读 116评论 0 0

友情链接更多精彩内容