01-11 作业

1.声明⼀个电脑类: 属性:品牌、颜⾊、内存⼤小 方法:打游戏、写代码、看视频

a.创建电脑类的对象,然后通过对象点的⽅方式获取、修改、添加和删除它的属性

b.通过attr相关⽅方法去获取、修改、添加和删除它的属性

class Ql_Computer:  # 
    """ 
    类说明文档:电脑类: 属性:品牌、颜⾊、内存⼤小 方法:打游戏、写代码、看视频
    """
    def __init__(self, brand = '', color = '', ram = 0, usage = ''):
        """
        函数说明文档:对象创建时赋默认值
        """
        self.brand = brand
        self.color = color
        self.ram = ram
        if usage in ['打游戏', '写代码', '看视频']:
            self.usage = usage
        else:
            self.usage = ''

computer1 = Ql_Computer('apple', 'black', '8G', '写代码')
print(computer1.usage, computer1.brand, computer1.color, computer1.ram)
print(getattr(computer1,'brand'), getattr(computer1, 'color'), getattr(computer1, 'ram'), getattr(computer1, 'usage'))

2.声明⼀个人的类和狗的类:

狗的属性:名字、颜⾊色、年年龄

狗的⽅方法:叫唤

人的属性:名字、年年龄、狗

人的⽅方法:遛狗

a.创建⼈人的对象⼩小明,让他拥有⼀一条狗⼤大⻩黄,然后让⼩小明去遛⼤大⻩黄

class Ql_Dog:  # 
    """ 
    类说明文档:
    """
    def __init__(self, name, color, age):
        """
        函数说明文档:
        """
        self.name = name
        self.age = age
        self.color = color

    def ql_Dog_Bark(self):  #
        """
        函数说明文档:
        """
        print('这只狗叫了')

class Ql_Person:  # 
    """ 
    类说明文档:
    """
    def __init__(self, name, age, dog):
        """
        函数说明文档:
        """
        self.name = name
        self.age = age
        self.dog = dog

    def ql_Person_Liugou(self):  #
        """
        函数说明文档:
        """
        print('%s在遛%s' % (self.name, self.dog))

dog1 = Ql_Dog('大黄', 'yellow', 1)
person1 = Ql_Person('小明', 18, dog1.name)
person1.ql_Person_Liugou()

3.声明⼀一个圆类:

class Ql_Round:  # 
    """ 
    类说明文档:
    """
    def __init__(self, length):
        """
        函数说明文档:
        """
        self.length = length

    def ql_Round_Area(self):  #
        """
        函数说明文档:
        """
        print('圆的面积:%d' % (self.length ** 2 * 3.14))
    
    def ql_Round_Circum(self):  #
        """
        函数说明文档:
        """
        print('圆的周长:%d' % (self.length * 3.14 *2))

round1 = Ql_Round(3)
round1.ql_Round_Area()
round1.ql_Round_Circum()

4.创建⼀一个学⽣生类:

属性:姓名,年龄,学号

方法:答到,展示学⽣生信息

创建⼀一个班级类:

属性:学⽣生,班级名

方法:添加学⽣生,删除学生,点名, 求班上学生的平均年龄

class Ql_Student:  # 
    """ 
    类说明文档:
    """
    def __init__(self, name, age, num):
        """
        函数说明文档:
        """
        self.name = name
        self.age = age
        self.num = num

    def ql_Inclass(self):  #
        """
        函数说明文档:
        """
        print(self.name, '到!')
 
class Ql_Class:  # 
    """ 
    类说明文档:
    """
    def __init__(self, stuname = [], classname = '未命名'):
        """
        函数说明文档:
        """
        self.stuname = stuname
        self.classname = classname

    def ql_Class_Appendstu(self, x):  #
        """
        函数说明文档:
        """
        self.stuname.append(x)
    
    def ql_Class_Delstu(self, x):  #
        """
        函数说明文档:
        """
        self.stuname.remove(x)
    
    def ql_Class_Inclass(self, stu):  #
        """
        函数说明文档:
        """
        if stu in self.stuname:
            stu.ql_Inclass()
        else:
            print('%s不在教室' % stu.name)
    
    def ql_Class_AverAge(self):  #
        """
        函数说明文档:
        """
        sum = 0
        for stu in self.stuname:
            sum += stu.age
        
        print('平均年龄为:%d' % (sum / len(self.stuname)))

stu1 = Ql_Student('xiaoming', 17, '0001')
stu2 = Ql_Student('zhangsan', 18, '0002')
stu3 = Ql_Student('lisi', 15, '0003')
stu4 = Ql_Student('wangwu', 17, '0004')
stu5 = Ql_Student('zhaoliu', 20, '0006')

class1 = Ql_Class([stu1, stu2], '高一1班')
class1.ql_Class_Appendstu(stu3)
class1.ql_Class_Inclass(stu3)
class1.ql_Class_Inclass(stu5)
class1.ql_Class_AverAge()

你可能感兴趣的:(01-11 作业)