exercise

作者: 葡萄柚子茶 | 来源:发表于2018-09-06 20:56 被阅读0次

    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
    
    

    相关文章

      网友评论

          本文标题:exercise

          本文链接:https://www.haomeiwen.com/subject/mswxgftx.html