2019-01-11作业

2019-01-11  本文已影响0人  百而所思

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

class Computer:
    def __init__(self, brand='None', color='None', memory="None"):
        self.brand = brand
        self.color = color
        self.memory = memory

    def play_game(self):
        return "%s的%s%s在打游戏!" % (self.memory, self.color, self.brand)

    def write_code(self):
        return "%s的%s%s在敲代码!" % (self.memory, self.color, self.brand)

    def watch_videos(self):
        return "%s的%s%s在看视频!" % (self.memory, self.color, self.brand)


com = Computer()
com.brand = 'HP'
com.memory = '16GB'
com.color = 'colorful'
print(com.play_game())
print(com.watch_videos())
print(com.write_code())
delattr(com, 'color')
print(hasattr(com, 'color'))
setattr(com, 'color', 'red')
print(com.color)
print(getattr(com, 'brand'))

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

class Dog:
    def __init__(self, name='None', color='None', age="None"):
        self.name = name
        self.color = color
        self.age = age

    def bark(self):
        return '%s在汪汪汪的大声喊叫' % self.name


class Person:
    def __init__(self, name='None', dog: Dog=None, age="None"):
        self.name = name
        self.dog = dog
        self.age = age

    def walk_dog(self):
        if self.dog:
            return '%s牵着%s在街上遛弯' % (self.name, self.dog)
        else:
            return '没有狗'


d1 = Dog(name='大黄')
print(d1.bark())
p1 = Person(name='小明', dog=d1.name)
print(p1.walk_dog())
p2 =Person(name='')
print(p2.walk_dog())

3.声明一个圆类:

import math


class circular():
    def __init__(self, radius):
        self.radius = radius

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

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

4.创建一个学生类:
属性:姓名,年龄,学号
方法:答到,展示学生信息

创建一个班级类:
属性:学生,班级名
方法:添加学生,删除学生,点名, 求班上学生的平均年龄

class AllStudent:
    def __init__(self, name='小明', age=0, sid='001'):
        self.name = name
        self.age = age
        self.sid = sid

    def sign_in(self):
        return '%s到' % self.name

    def show_info(self):
        return self.__dict__

class ClassGrade:

    def __init__(self, student=[], class_id=0):
        self.student = student
        self.class_id = class_id

    def add_student(self):
        allstdent = AllStudent()
        d1 = {}
        allstdent.name = input('请输入名字:')
        allstdent.age = input('请输入年龄:')
        allstdent.sid = input('请输入学号:')
        self.class_id = input("请输入班级:")
        d1['class_id'] = self.class_id
        d1.update(allstdent.__dict__)
        self.student.append(d1)

    def find_student(self):
        allstudent = AllStudent()
        print(self.student)
        n = input('请输入要点的名字:')
        for x in self.student:
            if x['name'] == n:
                allstudent.name = n
                print(allstudent.sign_in())

    def del_student(self):
        n = input('请输入删除的名字:')
        for x in self.student:
            if x['name'] == n:
                self.student.remove(x)

    def avgAge(self):
        s = 0
        i = 0
        for x in self.student:
            a = int(x['age'])
            s += a
            i += 1
        return s / i


c = ClassGrade()
c.add_student()
c.find_student()
c.add_student()
c.del_student()
c.add_student()
print(c.avgAge())


上一篇下一篇

猜你喜欢

热点阅读